API Documentation [Do not merge]

First pass at adding/updating class, function and API docs in the code.