command_uploader was running remote commands when it didn't need to

creating a new instance of CommandUploader.new would connect to the node twice
to get the temp file path. Stop doing that.
add more error cases for exceptions
Rework execute method's logic

Return nil from connector_for when we can't get one. Then either return an errored response
or send the method forward.
print a bit more error info when cleanup fails
handle unknown errors in winrm / ssh
Merge pull request #20 from RiotGames/host_commander_crashes

Handle Host Commander and WinRM actor crashes better