Re-organised CMakeLists