remove a stupid `socket` in socket.io URLs and add a room system on the server to reduce the data overhead for clients that do not listen to all the events