Persist shell adapter history between invocations of hubot

The shell adapter already uses readline, so it gets some text editing niceties, including a history. It doesn't seem to save or load the history though between hubot runs, which can be super annoying when iterating in development. This PR tries to fix that.

* includes [readline-history](https://www.npmjs.org/package/readline-history)
  * it's WTFPL, which is super permissive
  * code doesn't seem to be on GitHub, just npm?
* saves history to $(pwd)/.hubot_history
* default to 1024 history items, configurable by HUBOT_SHELL_HISTSIZE
* preserve position of prompt, so you always get a new prompt after messages are sent (useful for async)

The filename and environment variable are inspired by bash.

Probably should update doc/adapters/shell.md before merging this too.