Flipped the include guard and the pragma, and don't use the pragma for early versions of gcc (< 3.4)
Merged contrib folders from the graphbuilder-api branch, including the recursive search in CMakeLists.txt