I think that `which` exits with status `1` if nothing is found. Won't that cause the script to abort because [we use `set -e`](https://github.com/thoughtbot/laptop/blob/master/common-components/exit-trap#L3)?

I think you want to use `type`, `hash`, or `command` instead: http://stackoverflow.com/questions/592620/how-to-check-if-a-program-exists-from-a-bash-script

cc @pbrisbin @mike-burns @djcp