Added a bunch of documentation
Cleanup