Allow config variables to be overridden by environment variables

Similar to https://npmjs.org/doc/config.html#Environment-Variables this change allows configuration settings to be overridden by environment variables.  Environment variables starting with `BOWER_CONFIG_` will be merged into the config.

My use case for this is building projects which use Bower with Jenkins.  If more than one build is running at the same time they both try to write to the cache directory which can produce git locking errors.  It seems cleaner to me to just add an environment variable to the build rather than adding a `.bowerrc` file which would affect all developers as well.