API Docs Rework 
What do we want out of our API docs? What are the current issues?

I think we're (mostly) happy with `api.rst`: we manually list the classes and methods that we want to include the docs, grouped by topics of our choosing.

I think we're unhappy with some aspects of the auto-genrated class pages.

The [hack](https://github.com/pandas-dev/pandas/blob/c176a3c29ccabe7e471fa0b76c6cc1ceeb9bcd77/doc/sphinxext/numpydoc/numpydoc.py#L45-L48) in our vendored `numpydoc.py` "fixing" the autosummary to not include a table of methods for certain classes. This avoids a ton of redundant pages with the parent class, but we can't call out important differences like `RangeIndex.start`

We'd like a way to limit autosummary to specific methods in a class (I think this can be done with a `Methods` section in the docstring)

Tasks:

- [x] Limit API doc of classes to certain members (either extend autodoc or do it manually?) -> #18202
- [x] DOC: fix API docs generation with sphinx 1.6 #16705
- [x] DOC: documenting cython class (eg Timestamp): "cyfunction is not a python function" #5218 -> #18202
- [x] Remove vendored IPython sphinxext (#18193, #19657)
  - [x] should be OK with https://github.com/ipython/ipython/pull/10907 released)
  - [x] removed in #19657
  - [ ] We should check on Windows!
- [x] Align our numpydoc version with upstream / use upstream version: for this we somehow need to fix (or push upstream) our hacks to numpydoc ( I think this are the only relevant changes to the numpydoc source since it was last aligned with upstream in #6003) (xref #11257)):
  - [x] cf40991 initial commit for allowing classes without members table -> #18202
  - [x] 70c9d31 for None attributes
  - [x] Remove vendored numpydoc (work around https://github.com/numpy/numpydoc/pull/106#issuecomment-343220139)
- [x] Fix `cache_readonly` copying docstring (https://github.com/pandas-dev/pandas/issues/18197)
- [ ] `Index.name` and other class attributes. Either fix in numpydoc to use sphinx magic, or make into properties
- [x] `DataFrame.index` and `DataFrame.columns` (#18196)
- [x] Check performance (better than 1.6, but still slower? https://github.com/sphinx-doc/sphinx/issues/4230)