Rework into an engine; work on README