build process, project layout refactor