- Set hook to run before provisioner so that provisioners that need to c...

...ommunicate to other hosts in the configuration can run.

- Don't prevent hook from running when guest is already up. The operation should be idempotent. This was also interfering with setting hostname before the provisioner.

Use case for this is:
1) Bringing up a vagrant puppet master
2) Bring up a machine that's communicating with the puppet master by hostname during the provisioning stage. If the hostname isn't set, the action will hang or fail.