DOC: sphinx documentation

A lot of changes here, but pretty much all cosmetic, or auto generate elements for sphinx.

Once merged, I can add to readthedocs.org

Closes #630