Renamed functions for better readability and understanding.
Added additional test cases.
cleaned up comment in Calculator.pm