A generic scheduling service that runs on a background thread and fires events in a given check frequency.