Finish documenting most classes and methods

TODO: Document the datacontract classes that represent the two API's
used