Evaluate CC and CXX instead of hardcoded values

Hardcoded values for both CC and CXX options do not work across
platforms or compilers selected by default on your environment.

For example, under MinGW with GCC, CC and CXX are 'gcc' and 'g++'
respectively.

But if using a different version of compiler (like llvm-gcc) it will
fail.

Instead, allow user to override CC and CXX environment variables,
falling back to Ruby's information about the compiler (through
RbConfig) and then use the defaults.