windows: use a heap to hold timers on windows, #1460

This commit can be treated as a continuation of commit f17c535