Reduce use of the ($) operator.
Replace SaxEvent with plain Event
Use strict text and bytestrings for everything.
If the remote server closes the connection, send EOF to the XML parser.
Rename 'Event' to 'SaxEvent', in preparation for new "xml-types" package.
Update to use libxml-sax 0.6
Add locking to 'putStanza' and 'getStanza', to allow basic thread-safe access.
Rename 'Context' to 'Session'.
Define instances of 'Applicative' and 'MonadFix' for 'XMPP'.
Use 'xml-types' instead of HXT for basic XML processing.
Replace 'hGetChar' with 'hGetBytes'.
Transition most remaining text storage to lazy 'Text'.
Small cleanup to 'putTree'.
Use lazy instead of strict bytestrings.
Add error handling hooks to 'Handle' computation signatures, to simplify the migration to a better GNU TLS binding.
Expose enough of the 'XMPP' monad internals for clients to interleave it with other IO.
Define the 'XMPP' monad, so clients don't have to pass a stream around.