Refactor tasks and resources into objects; Dynamically create Resource classes; Add resource and job dependency graph; Add job dependency graph. Just need to schedule jobs now.