Handle zero monotonic time differences in the circuit padding code
I can reliably get the following failure on my macOS VM when its wall clock time is out of sync with the host time.
Failures like this also intermittently happen when the underlying API is low-resolution, or not actually monotonic (for example, Windows).
circuitpadding/circuitpadding_circuitsetup_machine: [forking]
FAIL ../src/test/test_circuitpadding.c:1900: assert(client_side->padding_info[0]->padding_scheduled_at_usec OP_NE 0): 0 vs 0
[circuitpadding_circuitsetup_machine FAILED]
I've worked around the issue in #29500 (moved) by weakening the test conditions.
But we need to fix the circuitpadding code so it handles zero monotonic time differences correctly.