Added ability to set config parameters through environment variables

The environment is parsed for variables starting with BITCOIN_, and
the remaining portion of the name becomes the argument name, with
the value set to the portion after the = sign, e.g.,

BITCOIN_DATADIR=FOO is equivalent to -datadir=FOO

The environment is parsed before the command line, allowing the
command line to take precedence over the environment.

There is a whitelist in util.cpp that only allows specified environment
variables to be used this way; currently, this is set to just -datadir
and -conf.

Signed-off-by: Johnathan Corgan <johnathan@corganlabs.com>