unix, windows: fix order of timer callback

When two timer handles have the same timeout value, callbacks
should follow the order of start.