Confusing (possibly buggy) IntervalIndex behavior
<img width="939" alt="screen shot 2017-05-09 at 10 03 25 pm" src="https://cloud.githubusercontent.com/assets/2761597/25880143/a872d5e8-3503-11e7-90f0-2244a52845d4.png">

In the above, I have a region that I'm querying for with a partially overlapping interval. The query succeeds when the interval is partially overlapping until it doesn't, throwing the key error: 

```
KeyError                                  Traceback (most recent call last)
/Users/alex/Documents/GarNet/venv/lib/python3.6/site-packages/pandas/core/indexing.py in _has_valid_type(self, key, axis)
   1433                 if not ax.contains(key):
-> 1434                     error()
   1435             except TypeError as e:

/Users/alex/Documents/GarNet/venv/lib/python3.6/site-packages/pandas/core/indexing.py in error()
   1428                 raise KeyError("the label [%s] is not in the [%s]" %
-> 1429                                (key, self.obj._get_axis_name(axis)))
   1430 

KeyError: 'the label [(5409951, 5409965]] is not in the [index]'
```

I think this is particularly confusing because there doesn't seem to be any prominent difference between the `loc`s that succeed and the `loc` that fails as far as I can tell. I know [we had discussed `loc`'s behavior in this context](https://github.com/pandas-dev/pandas/pull/15309#issuecomment-287936736) but I'm not sure we came to a conclusion. 

By the way, my larger question is about how to find intersections between two `IntervalIndex`. It seems like the [`find_intersections`](https://github.com/pandas-dev/pandas/pull/15309#issuecomment-284081223) function didn't make it into this release @jreback ? Let me know! =]