Roughly handle chatting, with caveats:

- No auth == no real nicknames yet. All messages come from 'someone'.
- The sender gets his/her message back in addition to their ack, right now.
- We're using JObjects here, instead of parsing into case classes.
  This is probably something we'll continue to do for the foreseeable future.
  When we do a Scala client library, we'll want to actually parse, though.
  But by then, the spec will be sturdy and more complete, and implementing it
  won't be as much of a challenge.