refactoring orbit game