Grab players' input from a generic stream, make HumanPlayer's stream Kernel
Make the game wait for a connection from a remote player
Make RemotePlayer call super in initialize like it should
Refactor game initialization
Set up connection to remote game
Push the local player's move to the remote player
Add newline to sent moves
Make the remote player eval move sequence arrays from the socket
Make sequence processing non-destructive so passing moves to remote players works
Quit the game politely when SIGINT is received
Remove pointless variable from Board
Add prompt and refactor Board#to_s