basic chat functionality

pretty sloppy and still doesn't handle namespaces for multiple routes