Provides generic sorting and searching. The two interfaces Ordered and Sortable are used by the static methods in Sort to perform binary searches and quick sorting of generic objects.