Fixed three bugs:
1) Peter Bigot @ Rincon noted that the changed flag was incorrectly cleared
and set, such that elapsed time would not be considered in trickle timers.
This caused trickle timers to fire late.
2) The possibility of a subtraction wraparound could cause timers to
have very large values and fire very late.
3) A repetition of subtracting the elapsed time (in both the fired
event and in adjustTime) would cause timers to fire early.