Removed dead intervaltree code
While looking to reduce build warnings I came across these methods and couldn't find any public use to them. The only one that seems to get hit is `get_loc` and that is in tests only so I think dead code
It looks like IntervalIndex.get_loc doesn't use `self._engine.get_loc`, which seems kind of weird.  Also looks like there's a good bit of either untested or dead code in indexes.interval: https://codecov.io/gh/pandas-dev/pandas/src/master/pandas/core/indexes/interval.py @jschendel  > It looks like `IntervalIndex.get_loc` doesn't use `self._engine.get_loc`, which seems kind of weird.

This is a result of the interval indexing behavior changes where we no longer allow partial interval overlaps, which was the main purpose of `IntervalTree.get_loc`.  The logic is now a bit simpler and much more straightforward to vectorize in numpy.

> Also looks like there's a good bit of either untested or dead code in indexes.interval

Yes, some of these can be removed for the same reason as above.  However, others are simply helper functions that are poorly tested.  After a quick glance:
- `_get_next_label` is used but poorly tested
- `_get_interval_closed_bounds` can be removed
- `_maybe_cast_indexed` can be removed
- `_can_reindex` is used and overrides a parent class definition that's not valid for `IntervalIndex`
- `_find_non_overlapping_monotonic_bounds` can be removed

Can look into the above more next week.
 Thanks @WillAyd!