Currently mocktime is written to a global, which may leak between sub-tests (albeit some tests try to reset the mocktime on a best-effort basis). Also, when advancing it, one has to keep a counter variable around.
Fix both issues by a new ElapseTime
helper, which resets the mocktime once it goes out of scope. Also, it has a method to advance the mocktime by a delta.