systemclock: Update monotonic reference time when re-scheduling

There is no guarantee that the clock is currently advancing, therefore if we
re-schedule (because of timeouts) a clock wait, we need to re-acquire the
current monotonic clock value against which we will wait.

Avoids spinning the cpu like mad (due to constant timeout) when clocks are

Fixes #673

Part-of: <gstreamer/gstreamer!794>
35 jobs for !794 with clock-spin in 37 minutes and 43 seconds (queued for 3 seconds)
merge request