Add pip requirements file.
Rename function to be consistent with other naming.
Fix faulty room join logic that allowed joining the same room again.
Move server responses out to own definition file.
Handle same-room joining on server.