Add support for dependent tasks, where certain tasks are disabled until prerequisite tasks are completed.
Tasks should dynamically enable/disable based on the completion of their dependencies.