refactor of timeout code
refactor of timeout code

This commit adds better exception handling from
the timeout code.


ihmccreery/puppetlabs-gce_compute,puppetlabs/puppetlabs-gce_compute,icg-puppet/puppetlabs-gce_compute,hunner/puppetlabs-gce_compute,hunner/puppetlabs-gce_compute,GoogleCloudPlatform/puppetlabs-gce_compute,ihmccreery/puppetlabs-gce_compute,GoogleCloudPlatform/puppetlabs-gce_compute,icg-puppet/puppetlabs-gce_compute,puppetlabs/puppetlabs-gce_compute