updated error handling

Updated error handling to use try/catch blocks instead of if statements
(this isn't Perl, I shouldn't be treating it like Perl). Also swapped
the order of Start-VM and Copy-Item, so the VM will start before the
(potentially very lengthy) copy takes place, instead of pointlessly
waiting for the copy to finish.