WIP: searchsorted implementation

closes #6712

- [ ] `timedelta64` tests
- [ ] more edge case testing
- [ ] how should non-monotonic indexes be handled (currently raising a `ValueError`)?
- [ ] `datetime64` (and probably `timedelta64`) coercion needs work
- [ ] `side` argument testing
ok i must be confused then. i thought `Out[11]` is what we want to return to be consistent with numpy. `In [12]` does return a series, but it's returning values, not an index. i don't mind switching but just want to clarify