platform independent newline character
Names representing classes or enum types must be nouns and written in
mixed case starting with upper case.
better variable naming
clean up unecessary comments and clarify others
Comment and refactor class