Allow running `install.sh` from outside of project's root

`cd` into project's root on every invocation.

Fixes #243
Improve installer script

* Shorter.
* Preserve timestamps and permissions.
* Overwrite existing files.
Merge branch 'better-installer'
Simplify fetching tarballs in build tests

- use cache path feature to skip HTTP fetch atogether
- unified build.log
Support relative path as install prefix

Fixes #110
Merge branch 'relative-paths'
Set default MAKE=gmake on FreeBSD
Add test for FreeBSD gmake

Closes #293
Merge branch 'freebsd-make'
Disable Travis email for new branches that are passing
Clearer error message when HTTP download fails

Previously, if `http get` failed, the `download_tarball` function would
still continue since the ERR trap had no effect at that point.

Given a script in the form of `{ ... } || return 1`, the expressions
that are the part of the first group are not subject to ERR trap since
they are non-last in a chain of expressions.

However, since we still can't count on the ERR trap taking effect in
this phase, better just rewrite the function to manually abort.

Fixes #394
Prefer control flow to chaining grouped expressions

Helps avoid the pitfall where ERR trap has no effect.
See 262eb1658cfedcc2bc85c7e8173f65ba7d40b085
Merge branch 'failed-download'
Force copying files for mruby

When installing mruby-dev, the cp command doesn't use the force flag.
This causes an issue when using a custom build configuration (via
MRUBY_CONFIG environment variable) and installing mrbgems from Github,
as the pack files in the git repositories are read-only.
Recursive copying fixes and tests

Use the `cp -f` flag to force unlinking non-writable files.

Closes #384
Merge branch 'copy-recursive'
Fix installer script changing into current directory

Fixes #440
Use rake from the current bundle for Rubinius

Rake might not be available on the system, but if there is a Gemfile,
assume that it bundles rake.
Install Rake and Bundler in isolation when missing

Some Rubies need Rake or Bundler for the installation process. However,
since the host Ruby version might not have those gems installed, install
them in a temporary GEM_HOME and add their executables to PATH.

Fixes #426
Fix `unstub` cleanup process for failed stubs