Add a randomized start before running CheckMonitors.

We have situations where systems use many checks (dozens to hundreds) with fairly long intervals (say, every 60s).  Starting them all at the same time leads to undesirable spikes in resource utilization.  This patch randomly staggers the start time of CheckMonitors to avoid this.  It should address our issue without altering behavior much in the common case.
Let's lower these timing values significantly. I think we can safely use a low value like 10ms for the Interval, and then use `testutil.WaitForResult()` to wrap checking the map indexes below. This way we can likely complete the test in ~20ms or so, rather than adding 6s to the overall test time. If you grep through the test code for `WaitForResult`, you will see how we generally use it.