Reinstate searchsorted(), returning a range

* Returns the range of indices in a sorted array equal to a given value
* Returns an empty range located at the insert location if the value is not
  in the array

Includes tests and documentation updates.

This is slightly more efficient than calling `searchsortedfirst()` and `searchsortedlast()` separately.  I vaguely recall a request for this, but I can't find the original.