builder: use workflow

Vastly simplify the builder process at the cost of a few more global variables.