Docs

This is an initial documentation skeleton. Each module has its documentation on a different .rst file. We have to figure out a way to differentiate types from functions in the documentation, but apart from that I think this structure may be a good start.