Code cleanup to be more conforming to style guide.

- Return `Unit` instead of using procedure syntax.
- Explicitly listed return type for `def`s.
- Added/removed `()` for arity-0 methods depending on whether or not they have side-effects.
- Removed unused imports.
- Fixed missing "`" in doc strings.
- Removed redundant `final` qualifier.
- Renamed values to prevent shadowing.
I'm not sure what the recommendation is for java-defined arity-0 methods, but I'd leave the `()`. Also in changes below (mostly `toString`)