Use task_args to access args Hash in all blocks
Specify work using worker method in inner DSL
Remove metaclass hackery to support yield in favor of update method