Refactored controller package and added input chooser class