Create top-level CMakeLists.txt

Added skeleton cmakelists.txt at the top level of the project.
Use new behaviour for AppleClang

Policy set to not identify apple clang as just clang for compatibility.
 We want to know the difference.