Maintenance worker

This pull request introduces a maintenance worker, which is responsible for cleaning out old complete and failed jobs from the backing store.

As a side-effect, you can also see the `started at` and `completed at` times for jobs.