Added headerdoc class comment
Improved comments
Added some documentation for the public headers