Refactoring game controller API