REFACTOR: Massive refactoring to 3 different classes of the calculation logic to mimic the MVC pattern for separation of concerns.