Use a monotonic time source in timer.
Use a monotonic time source in timer.

Replace all uses of SystemTime with Instant to avoid too early and too
late timeouts when system time is changed (daylight saving time, etc.)

To wake up the internal thread after correct delay, the
thread::part_timeout function should also use a monotonic time source,
which unfortunately is not true across all supported platforms (but this
is a QOI issue of rust condition variables).

carllerche/mio,asomers/mio,carllerche/mio,fuchsia-mirror/third_party-mio,asomers/mio,mneumann/mio,fuchsia-mirror/third_party-mio,murarth/mio,dwrensha/mio,mneumann/mio