First pass at workflow refactoring