testclock: Allow calling crank with a past entry
At the moment, we can only use crank if the pending entry is in the future. This patch leaves the clock time to the same point if the pending entry was in the past. This still execute a single entry. This will be needed for the jitterbuffer, since as soon as we stop waking up the jitterbuffer when the timer is reschedule later, we may endup with such case in the unit tests.
Related to #608