a chatroom using libevent