DecayingSample takes time_point in ctor and uses time_point

Address JIRA RIPD-395

Switches a number of places in Resource::Logic to use abstract_clock::now()
which returns a time_point.  Unfortunately Resource::Logic tracks time
locally also, but with ints, not time_point.  So Resource::Logic uses a
delicate mix of abstract_clock::now() and abstract_clock::elapsed() with
this commit.  That inconsistency could be addressed in a second commit.
We're adding an assert - are we sure that this can't ever be called in production?