Refactor based on product owner's suggestions:

- Remove command class, which served only the purpose of interface
  declaration.
- Use rspec-spies to create better mocks
- Create a shared example group for commands.
- Use `let' to set up context instead of creating temporary variables
  inside example groups.
- Wrap the terminal stuff so it can be elegantly skipped during testing.
- Fix formatting mistake where an empty line was inserted in an rdoc
  comment.
- Use to_sym and not intern; this is not lisp.
Refactor specs.

- Don't nest `context` blocks.  Instead, combine `context` and `describe`
to increase readabiliy.
- Be consistent about use of capitalization in specs: only top level
forms are capitalized.
Merge pull request #12 from expez/keyboard

Add support for keyboard events
Add bin/hatter.
Add keybindings to config file.
Merge pull request #13 from expez/refactor

Keys in config file and bin/hatter
Add configuration file for travis-ci
Merge pull request #15 from expez/travis

Add config for Travis