Split task and command. Refactor Tool and Task class. Add private tasks. Add symfony example.