Adds a .reply() method to MessageEvent.

Adds some sugar to test_live_messages to more cleanly express a series
of expected events. Also sends a reply message, and waits to see the
MessagePost and MessageReply events.
Merge branch 'reply' into test