Ideally if you wanted to remove all side effects, you would record the current time as `recordedTime` (or something) when `setTimeMultiplier()` is called, then `currentTimeMillis()` would be implemented as `recordedTime + (System.currentTimeMillis() - recordedTime) * TIME_MULTIPLER`