Detect home directory in way that is safe for cross-compilation.

Using the built-in 'os/user' package requires cgo, which means that
binaries cross-compiled on Darwin for Linux don't work.

This adds a small dependency ("github.com/mitchellh/go-homedir"), but I
think it's worth it to make cross-compilation easier.

cc: @didip