Feature/engine

Moving to an engine, shedding some weight, working toward a fully documented and releasable version.