rake install: support DESTDIR environment variable

This is required on systems like Exherbo where installation is first
done in a sandbox.

Closes #458
Escape slashes in compare URLs with semicolon

Fixes #466
Remove deprecated calls to `File.exists?`

They emit Ruby warnings on Ruby 2.1.0
Fix detecting git completions for bash & zsh for Boxen in tests

Fixes test failures with Boxen git 1.8.2-boxen1
Take advantage of Bundler 1.5 parallelism

This only affects CI builds in cases when the bundle is not cached.
Test with Ruby 2.1.0
gitignore `vendor/bundle`
Improve extracting title & body in `pull-request`

Avoids the issue where leading empty lines would result in an empty
pull request title.

Fixes #439, closes #465
Fork and set up remote in a non-blocking fashion

Forking through GitHub's API is asynchronous so there is really no way
of knowning when you can access git objects without polling.
Alternatively, we can establish the state of the fork with its remote
tracking branches and tags by fetching from the "origin" remote and then
changing the remote url to the fork.
`fork` should fetch from the same "origin" Github URL.
Merge pull request #469 from ivantsepp/301_fork_fetch_illusion

Fix `hub fork` command in cases when GitHub fork is not yet ready for fetching
Fix hub when a remote has local path instead of URL

Fixes #470
Prefer browsing upstream when on the master branch

When a user would do `hub browse` on the master branch and they had a
fork, the hub would open the browser with their fork instead of the
upstream project. This is surprising and unwanted, so I've added an
exception for this case.

Fixes #474
Go canonical when browsing to subpage other than commits/tree/blob/settings

If the user is currently on the "feature" branch that is pushed to their
fork, when they do `hub browse -- issues` it should open issues of the
main (canonical) repository, not that of the fork.
Merge branch 'browse-upstream'
v1.11.2