This homework will be worth a total of 25 extra credit points.

There is no autograder; it’s up to you to test whether or not all of the functionality has been implemented correctly.

Please include a NOTES.md that outlines your implementation strategy and clearly denotes what features have been implemented. If you do not explicitly call out the feature you implemented, you might not receive points for those features. A template is provided for you in the starter code.

For example, we expect your NOTES.md to be structured like the following:

## Overview

The job scheduler was implemented using ...

A variety of tests were added to ... which test ...

<Other important information here>

## Features

- [x] Simple job scheduling
- [x] Job scheduling with dependencies
- [ ] DOT Graph generation
- [ ] Added tests
- [ ] Delay configuration
- [ ] Debug log flag

Marking an item with [x] signifies that you completed that feature. Do NOT mark a box unless you actually wrote code for the feature.

Additionally, if you complete the DOT graph generation feature, please submit a .png file that represents a graph of the included ./internal/testdata/config/dependencies.yaml file, and name it dependencies.png. You can generate a .png using the provided ./scripts/grpah.sh script.