Initial commit

Status: nothing works except accepting and maintaining
connections. Most of old code is left commented or intact for easy
reference.
Added support for relaying whispers.
Enabled processing of /queries
Moved typedef socket_ptr to a separate header.
Implemented send_server_message helper function.
Started implementing rooms.
Properly create rooms once per room name, not per player->room relation.
Implemented some more helper functions.
Handle remove of players from room list on disconnect.
Added support for relaying messages to rooms.
Made new players actually join lobby.
Send proper WML on room joins.
Properly send diffs to other clients on logins/disconnects.
Added support for setting/getting room topic.
Implemented client_address() helper function...

...to handle errors from socket::remote_endpoint()
Added a command line option to enable TCP keepalive.