Parse Stormfront XML and add simple client

Parse the incoming XML enough to get the data enclosed by tags, and
send that data to the new client script for output. Raincloud now
requires the client to be open to see game text. Commands are still
accepted in the play_dr.py script.
Add support for reading and writing logs

New command-line options for the play_dr.py script. Read from and parse
a log file instead of connecting to the remote server (for testing the
parser and client(s) with the "--file" option. Log a session to a file
for later viewing and testing with the "--log" option.
Clean up handling of text sent to client

Use a message envelope when sending/receiving text data stream. Only
send parsed text at tag boundaries (to prevent accidentally breaking
some text across lines in the wrong place. Send each chunk of text on a
new line so adjacent tags don't run together as a single unit.
Start parsing tags semantically

Handle tags identifying streams and separate them into different data
streams. Handle tags identifying simple presentation information and
translate them into terminal formatting commands.