The documentation states: "The two ranges are assumed to be sorted by less."
Would it make more sense for this function, and its siblings, to take a SortedRange instead. This would be a breaking change as it would require people to either sort or assumeSorted before calling.
But SortedRange was added for exactly this application (I believe).
