TCP communication now works between two instances.

TCPConnection can now be set to either client or server. It will work in
both cases. This enables communication between two game instances. The
build script has been updated to start two clients if you supply
argument -d. They will start in separate terminal windows and work
normally.

TODO:
-Need to add calls to read messages in GameManager::Update
-Server needs to be able to send and client needs to be able to recieve
messages ( should be possible, but needs testing )
-Need a struct or similar to hold game information.
-When all the above is in place : multiplayer!
-When local multiplayer is working, implement a server that connects two
remote instances.
Fixes some small issues, added main

Forgot to add main to the previous commit. Also removed some needless
console output and added a delay that allows server to be started before
client tries to establish its connection. This is an issue that will not
exist when client and server are on different computers.