Add hooks to calculate session time.

Billing can happen based on time in 20s increments. We need insight into average session duration per service.
This won't invoke the function given to `Q`. I think you want `Q.try` here. Maybe this bit isn't needed anymore now that we have a `.attach`?