Many C++ utilities (static analysis tools, compiler wrappers, tag generators) expect to be set as the compiler, and then determine the base compiler to actually invoke by inspecting the well known CC and CXX environment variables.
Similarly, users attempting to build mongo often expect 'CC=/path/to/cc CXX=/path/to/cxx SCons mongod' to work. It is not immediately obvious that they should use the --cc and --cxx options instead.
We should conform with well established practice and honor CC and CXX from the environment, unless overridden by --cc and --cxx on the command line.
We should also ensure that CC and CXX variables that are set in the environment are tunneled through the Env and are available to child procs.