Use customizable binary locations with diagnostics

@cyc cc @lucaswiman This commit makes the binary locations for `coffee` and `sass` customizable. It also provides the option of using Bundler (http://bundler.io/) to run Sass. This can be especially helpful in situations where users want to lock down their CoffeeScript or Sass installation.

In addition, the asset precompiler now performs a few checks before compilation to make sure that the tools it needs exist. This also gives better diagnostic messages.

The default Sass option `--compass` is removed in this commit since not everyone uses it.

Prefer this be named something like `error_or_kill` to make it clear that it either does one or the other