added socket.io binding