bugfix
Add specs.
Cancel all children when parent failed.
refoctoring
refactoring.
Refactoring

Remove ThreadManager from Driver.
Refactoring.
Remove mutex from dependency graph.
Refactoring.
Add custom command.