Rfactoring GameEngine