peer-to-peer chat client and server