Fixed improper implementation of RPN logic.

- Old version applied operators to all previous operands. This is
  incorrect. Instead, operators are applied only to the previous pair of
  operands.
- New version performs calculations as specified on the RPN wiki.
- Refactored into a more idiomatic Scala style
- Updated and refined comments to better describe behavior
- Renamed objects/classes to better illustrate their relationship to one
  another.