Merge pull request #7 from SirSkidmore/master

Restructured for basic Ruby layout
Add support for configuration files
Merge pull request #10 from Expez/config

Add support for configuration files
Some project level refactorings.

- mv .hatterrc -> hatterc
- Add gitignore file
- Add rb_termbox to the Gemfile
Make configuration a singleton and add new settings.
Implement the views we want to display to the user.

The Folder_view is a list of all the folders of the mailbox.

Label_view is a list of all the labels of the mailbox.

The Mail_view displays the mail itself.
Implement maildir mailbox

This a stub for the first mailbox format.

To add support for another mailbox implement it in <maildir_format>_mailbox.
When the user adds maildir_format = <maildir_format> the file will be required
and the new mailbox used automagically.
Add test fixture with a single spam mail
Implement terminal interface
Update rvmrc to set RUBYLIB to this project's path.
Refactor to be in line with the github style guide.

- Move require statements outside class defs.
- Use parens around defs with args.
- Remove implicit calls to super
- Replace offensive test fixture email.
Merge pull request #11 from Expez/ui

Merge initial UI roughout
Implement CommandFactory.

We create new commands to execute using the factory pattern.
Implement the NoOp command.

The Commands are in the style of the Command pattern.  Each command has
an execute method and, if applicable, an unexecute method which is used
to reverse the effect of the command.

By using the command pattern in this manner we can keep track of the
last X commands and allow the user to undo his actions, increasing
usability.
Implement QuitCommand.
Add support for key events.
Add documentation to Terminal and fix indentation.