CDK-177: Adding Marker Comparator and Range to SPI.

MarkerComparator implements comparison methods between Marker objects to
help implementations work with ranges of partition space bounded by
Marker objects. MarkerRange defines a range between two Marker objects
(that could be the same Marker) with inclusive or exclusive bounds. The
methods for defining a MarkerRange match range construction methods of
View.