Use prepare instead of idle for less CPU consumption.

Idle makes the CPU run hot, we don't need it we need to check
once before every run.
Remove superfluous Prepare handle.

We are already running the loop with RunOnce, so we can just
put the code before RunOnce. This saves us the need to worry
about an additional handle.