(#14766) Added a splay job class to the scheduler

This class implements a job that runs with a constant offset.

Paired-with: Andy Parker <andy@puppetlabs.com>
WIP: runs late jobs immediately

was working on refactoring the specs in scheduler_spec to use real jobs and
test the interval indirectly using the timer object

need to create a small timer mock that updates now when wait_for is called to
make the tests easier to think about