Clean up MoeObject further and add documentation.

* Use the implicit constructor with a default to reduce complexity
* Add scaladoc to methods and class
* Rename some variables to be more descriptive
* Use named parameters in methods, since this is one of those libraries
  that needs to be read by others and it will change often. Future
  proofing!
Basic contitional expressions support
Merge remote-tracking branch 'upstream/master'
Minor indents fix
Use the correct acronym for SBT
Add build.sbt instead of shipping libs (credit to @non in #2) and fix a
warning.
Optimized elsif conditionals
Merge pull request #10 from gphat/master

Mo' MoeObject cleanup
Merge pull request #11 from jasonmay/patch-1

Use the correct acronym for SBT
Merge pull request #12 from sergeyromanov/master

Basic conditionals
"0" is also a false string

But not "00".
Merge pull request #14 from tsibley/falsey-strings

"0" is also a false string
Test that "00" isn't false

This was supposed to be included in commit 87a0eb1.
Merge pull request #15 from tsibley/test-00-is-false-string

Test that "00" isn't false
Express all conditionals in terms of the primitive IfElseNode

This feels like a cleaner way to do it, and presumably any optimization
of the AST is going to happen before it hits the interpreter.

Fleshes out the tests for conditionals to make sure our bases are
covered.
Implement and test Unless and UnlessElse
Merge pull request #16 from tsibley/conditionals

Express conditionals in terms of IfElse primitive and add Unless and UnlessElse
Privatize associatedClass as it is otherwise leaky.
Clean up 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