[BUG] IntervalIndex.get_loc error for decreasing index
#### Code Sample, a copy-pastable example if possible

```python
In [1]: import pandas as pd                                                     

In [2]: intv1 = pd.IntervalIndex.from_arrays([1, 3, 5], [2, 4, 6])              

In [3]: intv1                                                                   
Out[3]: 
IntervalIndex([(1, 2], (3, 4], (5, 6]],
              closed='right',
              dtype='interval[int64]')

In [4]: intv1.get_loc(intv1[0])                                                 
Out[4]: 0

In [5]: intv2 = pd.IntervalIndex.from_arrays([4, 2, 1], [5, 3, 2])              

In [6]: intv2                                                                   
Out[6]: 
IntervalIndex([(4, 5], (2, 3], (1, 2]],
              closed='right',
              dtype='interval[int64]')

In [7]: intv2.get_loc(intv2[0])                                                 
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-7-00c58bb4fb1e> in <module>
----> 1 intv2.get_loc(intv2[0])

~/Code/pandas/pandas/core/indexes/interval.py in get_loc(self, key, method)
    777                 return slice(start, stop)
    778             else:
--> 779                 raise KeyError(original_key)
    780 
    781         else:

KeyError: Interval(4, 5, closed='right')


```
#### Problem description

This `IntervalIndex` is non-overlapping_monotonic. `IntervalIndex.get_loc` runs in `KeyError`, even the key is its first element. 

After `start, stop = self._find_non_overlapping_monotonic_bounds(key)`, `start` and `stop` get the same value. Thereafter, no conditional handles this case.

#### Expected Outcome

In [5]: intv2 = pd.IntervalIndex.from_arrays([4, 2, 1], [5, 3, 2])              

In [6]: intv2                                                                   
Out[6]: 
IntervalIndex([(4, 5], (2, 3], (1, 2]],
              closed='right',
              dtype='interval[int64]')

In [7]: intv2.get_loc(intv2[0])                                                 
Out[7]: 0


#### Output of ``pd.show_versions()``

<details>

INSTALLED VERSIONS
------------------
commit: 01988735f8abde6ddc108f244ef0bbaef35ed1dd
python: 3.7.1.final.0
python-bits: 64
OS: Linux
OS-release: 4.18.0-16-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_HK.UTF-8
LOCALE: en_HK.UTF-8

pandas: 0.25.0.dev0+308.g01988735f
pytest: 4.0.2
pip: 18.1
setuptools: 40.6.3
Cython: 0.29.2
numpy: 1.15.4
scipy: 1.1.0
pyarrow: None
xarray: None
IPython: 7.2.0
sphinx: 1.8.2
patsy: 0.5.1
dateutil: 2.7.5
pytz: 2018.7
blosc: None
bottleneck: 1.2.1
tables: 3.4.4
numexpr: 2.6.8
feather: None
matplotlib: 3.0.2
openpyxl: 2.5.12
xlrd: 1.2.0
xlwt: 1.3.0
xlsxwriter: 1.1.2
lxml.etree: 4.2.5
bs4: 4.6.3
html5lib: 1.0.1
sqlalchemy: 1.2.15
pymysql: None
psycopg2: None
jinja2: 2.10
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None
gcsfs: None

</details>
