Restructured CMakeLists