Some documentation.
Made some functions into properties.
A bunch of documentation.