worked up to circular dependency
Merge branch 'cmake' of github.com:jgressier/typhon into cmake
first serious commit of a working CMake