add tcp_socket class