Fix timeutils.set_override_time not defaulting to current wall time

This patch modifies timeutils.set_override_time so that it does not
default to setting the override to the current time when the function
*definition* is executed, but rather defaults to using the current
time at the moment the function is *called*.

The thinking is that this behavior is more along the lines of what
the developer would expect when using this function. The new behavior
is called out explicitly in the docstring.

Change-Id: I5a2d449c76a392c902d7a89617d63d7f1e896276