List of dependencies for each task (made by hand probably).
Separate function that initializes tasks: takes dependencies list of each one and looks up each of the modules. If dependency is not present, print warn message and ignore the task for the rest of the runtime.
This requires: