Don't push network packets to the front of the queue if the frist packet is only partially transmitted. They are now inserted at the second
position instead.
Abstracts all socket code into a new class TcpSocket which is only exposed by a light interface, ITcpSocket. This now means that platform specific headers like winsock2.h and sys/socket.h do not have to be included in OpenRCT2 header files reducing include load and other issues.