Switch to 2.1.2 on Heroku
Add metrics to build API
Use "$@" instead of eval "$@" in travis_retry

eval "$@" will cause issues with commands that have quotes in them,
making `travis_retry ruby -e 'p ARGV'` run the command `ruby -e p ARGV`,
which won't work correctly. Not using `eval` means that some things
won't work right (mostly just `time <command>`, I believe), but this is
the old behaviour that didn't seem to break for anyone.
Revert "Use "$@" instead of eval "$@" in travis_retry"

This reverts commit 30109b352a124ca78246b78911a6c3b87b743deb.

This ended up breaking things in production, for example git clone
didn't work:

$ git clone --depth=50 --branch=travis git://github.com/owner/repo.git owner/repo
/home/travis/build.sh: line 174: git clone --depth=50 --branch=branch_name git://github.com/owner/repo.git owner/repo: No such file or directory
Change `eval "$@"` in travis_retry to `"$@"`, take II

I first attempted making this change in
30109b352a124ca78246b78911a6c3b87b743deb, but that broke a lot of other
commands. This approach works much better, as it only runs "eval" when
it is needed.
Merge branch 'master' into dyrim-rust-support