rename state -> repr
basic room creation, client-side
some prep work for sockets
basic user rooms
fix an oopsie, and add a roomNotFound event