A task manager that decides what to work on next: tasks are weighted by urgency, and the scheduler draws from them at random in proportion to those weights.