Feature: Task Scheduling

Allows you to schedule tasks to execute over a given period of time, or until it returns true.

Closes #102.

Relies on #103.

See [feature/TaskScheduling on Sample Dash Game](https://github.com/Circular-Studios/Sample-Dash-Game/tree/feature/TaskScheduling).