move around the delayed and periodic invocation functionality, in preparation for a non-wall time task queue
make distill-timing idempotent