More cleanup and improvement

* Properly privatize objects associatedClass var
* MoeClass:
   * Ditch overloaded constructors for the implicit one with Option and defaults, then use named params
   * Scaladoc
   * Refactor attribute & method methods to be more idiomatic
* Clean up MoeAttribute
* Show how to document a case class in AST
* Remove the last of the HashMap that were peppered around and unnecessarily mutable
* 2-space indent a bunch of tests that missed the four-space-pocalypse