Generalized the makefiles to make it possible to specify alternate C and C++ compilers in the root Makefile