Implemented basic local Client and Server functionality

Client connects to Server at given address.
Server starts at requested address, runs listener, accepts connections (up to predefined limit).
ServerClients static struct provides access to connected clients information.
Implemented Client and Server message processing

Client and Server keep incoming and outcoming data in corresponding buffers.
Server has a pair of buffers for each connected client.
The incoming buffers are available for reading from external script; this is done by calling Client.Recv() and ServerClients.Recv(i).
The contents of outcoming buffers are being sent asynchronously each tick (if there are any). If socket failed to send data, the buffer is kept for the next attempt; buffer is erased on success.
Implemented BattleshipHost and BattleshipGuest classes

Host starts server and parses guest messages. It sends updates to all of its guests.
Guest establishes connection with Host and parses host messages. It notifies the host of the user's actions.
Implemented handshake protocol

When accepting new guest connection, Host sends identification data and initial name for a new guest. Guest tests if the host identification matches his expectations and sends his own id as a reply, which is in turn tested by the host.
If any identification fails, the corresponding peer resets connection.

New net commands:
 - /HOST_IDENTIFICATION
 - /GUEST_IDENTIFICATION
 - /DATETIME
 - /NAME
Allow user to send client commands to the host
Implemented client and server log files
Escape textual net arguments with double-quotes