Updated JSdoc 

Added class properties, clean up, expose some methods that should have been documented, etc.
@ritch 
AFAIK the correct markdown syntax is to start the content on the new line after three backticks. I'l correct it myself.