refactor GameCore to GameManager