Do not insert blank lines into `Readline`'s history
Extract `ModuleDelegator` from classes that wrap `Readline`
Close list in manpage
Don't handle version.rb as SCRIPTS file

SCRIPTS get execution permission on installation; this is not intended here.
Add missing require.
Use the same git command everywhere.

The `GitRepository` and `GitCommand` classes were using different git binaries
when the `--git` option was used. This could cause minor inconsistencies,
for example `hub` commands worked but could not be tab completed.

Fixing this revealed a potential bug in the `History` class, when a
non-numeric `gitsh.historySize` setting was used, so that's fixed too.
List similar projects in the README
Ensure transformer can handle empty string arguments
Fix ReadlineBlankFilter when readline returns nil

When readline receives an EOF it returns nil. This was causing a crash when
a user sent an EOF to quit gitsh.
Support shell commands.

A shell command can be any command prefixed with a !, e.g. `!ls` or `!pwd`
Add ability to chain multiple methods together.
Add `Pry` for easier test debugging.
Set test order to random to surface order dependencies.
Document new features.

* Shell commands.
* Combining commands (&&, ||, ;)
Handle shell command failures gracefully.
Fix tab completion for branches with a dot

Completion after the dot would be seen as a new branch name. This is correct
behaviour for two dots (e.g. HEAD~2..master) but not for one dot (e.g.
fix-v1.4)

Includes a refactoring of the Completer unit spec, to reduce the amount of
repetition.
Set $PROGRAM_NAME so that gitsh shows up as 'gitsh'
Allow the parser to understand upper and lower case letters.

We should pass bad commands onto git to get the standard
"git: 'X' is not a git command. See 'git --help'." message.
Version bump: 0.5
Arch package for version 0.5