Migrated to CMake
Added the missing examples
Minor changes to surface shifting
Fixed syntax error in CMakeLists for CXX flags