Our own copy of contextutils.

Make its tests properly unittest-y (use test asserts etc.)

Make the timer test use a fake clock instead of relying on system clock behavior.

Change a handful of callsites to use the new location.