add first pass at a periodic update manager
add first pass at a periodic update manager

Add a facility for setting up and managing things that need periodic
updates. The first user comes in the next commit: the pagerduty plugin
needs to pre-cache oncall policies for the !oncall command. Since a few
modules will want this sort of function, this makes managing these
functions a part of Hal that plugins can use without having to implement
everything locally.

Netflix/hal-9001