refactoring of package structure, markup workflow, IO and model