Allow the location of `~/.cargo` to be overridden via `CARGO_HOME` env var.

I intend to use this to allow many copies of the Rust toolchain to coexist.
auto merge of #1084 : brson/cargo/home, r=alexcrichton

...ar.

I intend to use this to allow many copies of the Rust toolchain to coexist.

My project for managing Rust toolchains: https://github.com/brson/multirust