Separate out the DAG data structure from the code that fills it from waf data.
Make __init__ empty, move contents to waffuncs.
cosmetic move logging exec_command to new orch.utils.
cosmetic split apart old features.py into submodule for each feature.
Waypoint to getting feature refactoring done.

This successfully builds the simple example
Start to add back in patch support.

This shows that expressing dependencies is still a problem.

sigh
Delay dependency registering until all tasks are registered.