implemented basic server side sockets