Initial import; converted to CMake