Moved to using lens properly, restructured the library. Removed the dependency on compiler-machinery and the compilers, these will go in a separate package.