The run_ssh_command() and run_scp_command() subs in utils.pm make multiple attempts if the command fails. There is no delay between attempts. It will be beneficial to add a delay because it's possible the computer is booting up or services such as Cygwin sshd is starting up. Without a delay, all of the attempts may be made and then the computer becomes available.
It would be good to have a progressive increase in the delay. The first to second attempt may not wait at all, then a couple seconds, then maybe 30 seconds on the last attempt. This amount of time is necessary because some things can take this long to initialize, such as running update_cygwin.cmd and configure_networking.vbs.