ash: Add a very small timeout to nonblocking wait

A nonblocking waitpid was implemented using WaitForMultipleObjects
with a timeout of 0.  This was to fix an issue where builtin
commands in a foreground shell were blocked while a background
command was running.

However, this caused the shell to consume 100% CPU.  A workaround
seems to be to use a very small (1ms) timeout.