PERF: do not instantiate IndexEngine for standard lookup over RangeIndex
- [x] closes #16685
- [x] tests added / passed
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

The ``pytest.raises(AttributeError, ...)`` are somewhat superfluous in that they test a limit of the implementation, rather than a guarantee of the API... but they still make the test more robust.
Hello @toobaz! Thanks for updating this PR. We checked the lines you've touched for [PEP 8](https://www.python.org/dev/peps/pep-0008) issues, and found:

* In the file [`pandas/core/indexes/range.py`](https://github.com/pandas-dev/pandas/blob/e9f6f6ba09fa6c817026e3805731542790bb969d/pandas/core/indexes/range.py):

> [Line 355:80](https://github.com/pandas-dev/pandas/blob/e9f6f6ba09fa6c817026e3805731542790bb969d/pandas/core/indexes/range.py#L355): [E501](https://duckduckgo.com/?q=pep8%20E501) line too long (95 > 79 characters)
> [Line 361:80](https://github.com/pandas-dev/pandas/blob/e9f6f6ba09fa6c817026e3805731542790bb969d/pandas/core/indexes/range.py#L361): [E501](https://duckduckgo.com/?q=pep8%20E501) line too long (92 > 79 characters)





 All green. I'm afraid pep8speaks is resenting the heat. thanks @toobaz nice patch!