Working to make Shell work.

- Added global for ESC.
- Reenabled Terminal interupt
- Added ANSI control code to move down line
  - Needs to be implemented
Merge pull request #31 from JacobLeach/terminal

Added support for ANSI control codes E and F
Merge branch 'dev' into new_shell
Made commands work again.
Merge pull request #32 from JacobLeach/terminal

Added function to get curent cursor position
Merge branch 'dev' into new_shell
Fixed prompt so it displays on correct line.
Merge pull request #33 from JacobLeach/new_shell

New shell
Fixed issue of extra lines being placed.
Merge pull request #34 from JacobLeach/new_shell

Fixed issue of extra lines being placed.
Merge pull request #35 from JacobLeach/dev

Massive refactoring
Added the status bar and status command.

Fixes #3.
Merge pull request #37 from JacobLeach/status_bar

Added the status bar and status command.
Added support for non-canonical mode in the terminal
Added some character constants.

This is just for ease.
Merge pull request #38 from JacobLeach/constants

Added some character constants.
Merge branch 'master' into new_shell
Terminal is now non-buffering.

Changed shell to put terminal in non-canonical mode. The shell does all
the buffering and stuff itself.
Merge pull request #39 from JacobLeach/new_shell

Shell working with terminal in non-canonical mode
Started working on getting tab completion to work.

Currently it does work but there is an extra space. This is due to the
tab being printed. At the moment sending a backspace does not remove a
character if the input buffer of the terminal is empty. This is a bug
and a holdover from when the terminal did all the buffering. After that
bug is corrected this should work correctly.