Implement network registration detection (untested)
Working network detection, implemented using AT+CREG? and pattern matching on the GSM module.  This was more straightforward and reliable than an arbitrary timeout on the controller.  The disadvantage is that the GSM module locks the bus while it is handling an 'open stream' RPC and waiting for network (in practice I have seen this take up to 9 seconds, the maximum timeout in the matching code is about 30 seconds).  RPC callbacks would circumvent this.
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.
Merge branch 'bug-reporting-hang' into feature-gsm-network-detection
Wait longer for network detection and message reception, actually exit with an error if we fail to register, wait longer after starting the SMS stream (for some reason Vodacom SIMs were taking longer than 50ms to send the > prompt)
Merge pull request #93 from amcgee/feature-gsm-network-detection

Gsm network detection