Changes the compilation spec and fixes the code to respect it
Fixes a bug in the file to file compiler
Changes the output buffer variable to a method
Adds googletest submodule
Adds cmake files.