refactoring Game design