Fix winLen in Board.java
Add a network server and client
Add signalGameEnded and setName for Player
Send game end signal to every player
Rename Turn -> Move
Implement Observer pattern on GameSession
Flush network output and resend msg when needed
Move checkMoveIsWin back to GameSession as it's part of the game logic