Messed around with this a bit, and I must say, I am impressed.
Having said that, here's some things I noticed:
The server is very bad at detecting if a client dropped out. (To the point where I suppose you haven't even implemented that yet, if so, disregard this.)
When I finish a game and go back to the lobby, both players are still readied up and unreadying one of them causes a new game to be started.
Other than that, I found navigating the menu a bit unintuitive. (But then that could also be because I keep trying to use a start and R button, silly me.)
Again, nice work so far, I'll be keeping an eye on this.