A C++ TCP/IP socket wrapper