initial socket.io implementation working