GTest and GMake as external projects

Hey,

I modified the CMake files to use GTest and GMake as ExternalProject instead of relying on global dependencies for them, as per Google's recommendation.