Respond to errors to not "hang"

Ideally this would reconnect instead of exiting, but I couldn't figure out how.

The errors it currently looks for are:

* ECONNREFUSED:
  Happens for me if the ejabberd server is not running when the bot starts
* server-shutdown
  Happens for me if the server shuts down while the bot is running.

Before this fix, the bot would just hang. After this fix it will exit (and if
run under forever, restart)
Fix robot.messageRoom, missing user in env

When using robot.messageRoom, the envelope only has room in it, and no user.
This small fix will just check for user object, and if not defaulting to the
group sensible defaults
Merge pull request #33 from omega/fix-hanging-errors

Fix hanging errors
Shorten delays and add tests.

* Shorten the process.exit() delays so they fit within the mochajs
  timeouts.
* Add tests for error handling.
Bump version number.
Merge remote-tracking branch 'markstory/master'