Refactoring GgpProtocol in preparation for remote player.