refactored - introduced packages for the different aspects of the game