Add some more error case checking.  Don't allow multiple streams to be started (TODO: turn off the module if a stream is opened but never closed).  Remotely log errors if a message fails to send.