Improve integration specs.

* Add missing _spec prefix to one file
* Rename ambiguous specs
* Merge duplicate contexts
* Fix typos
Support commenting of partial lines.

e.g. `add . # Add all files`
Add a :help command

`:help` on its own will show a list of internal commands, and `:help
command` will show help for the given internal command.

This commit also extracts the various internal command specs from
spec/units/commands/internal_command_spec.rb into their own files.
Handle SIGWINCH, and tell Readline to resize.

When the terminal emulator window in which gitsh is running is resized,
gitsh will receive a SIGWINCH signal. This commit adds a handler for this
signal, and updates Readline's window size.

The hope is that this will fix a couple of resize-related bugs (strange
wrapping, and pagers loading at the wrong size). These bugs are hard to
reproduce, so it's not 100% clear that this fix works.

Also introduces a TermInfo class to contain `tput` interactions.
Support .git/rebase-merge or .git/rebase-apply

The `$_rebase_base` magic variable determines the base commit of a rebase by
reading the metadata in the `.git` directory.

Rebase metadata is stored in different sub-directories at different times.
This commit adds support for `.git/rebase-merge` in addition to the existing
`.git/rebase-apply` support.

See: http://stackoverflow.com/questions/3921409
Disable rubygems when running gitsh.

There are currently some load errors related to an installer bug (see issue
 #178).

When rubygems is enabled it modifies require, which makes these bugs worse
by failing more slowly and with less helpful output (e.g. on my Mac OS X
system with Homebrew Ruby, it installs the Nokogiri gem before failing).
Include lib/gitsh/*/*.rb files in installation.

The previous install mechanism would only install files from `lib/gitsh`; it
excluded files in subdirectories. c1dc545c21a8037f47d71bf8ca01e667433f6d6e
moved the command classes into a subdirectory under `lib/gitsh`, and
subsequently these files weren't included by the installer.
Version bump: 0.8
Arch package for version 0.8
Refactor: construct Parser with an Environment
Drop a git prefix if help.autocomplete is set
Custom colour support.

Allows users to override the colours of the prompt in various states, by
setting git-config(1) variables. This is very similar to git's built-in
mechanism for setting colours, e.g. for git-log(1) output.