add top level CMakeLists.txt