Refactoring and comments
Implemented multiplayer version