Check exit codes of puppet provisioners

Previously, failures in applying the puppet manifests would be
ignored, because puppet apply/agent don't have any useful exit codes
by default.  (Errors are printed, but vagrant continues.)

Use the option --detailed-exitcodes of puppet apply/agent to check for
success.
Fixes a bug with DNS resolution in Ubuntu 12.10.
Fix Windows shell provisioning

Resolves [GH-1036] [GH-1164] [GH-1181]

Ported fixes from patches to 1-0-stable
fix change_host_name for Ubuntu Hardy
Merge pull request #1183 from obscurerichard/fix-windows-shell-provisioning-vs-master

Fix Windows shell provisioning.
Whitespace and such
Merge pull request #1175 from petere/puppet-exitcodes

Check exit codes of puppet provisioners
Merge pull request #1176 from paulv/master

Fix for DNS resolution bug on Ubuntu 12.10
Disable DNS proxy for 12.10 too
Allow hostnames to be subset of box name for Ubuntu
Fix match? and nfs? for Arch host
Use a better check for systemd

Using `which systemctl` would return true on even non-systemd machines
during this transitional time.
Fix old channel usage on chef client provisioner
Omit empty lines in Puppet provisioner output

The sudo() block and/or the Puppet provisioner often returns newline
characters as separate strings. This makes the chomp() ineffective and
results in extraneous spacing between the output lines.

Separate out the call to chomp() so that we only do it once. Then only
output info if that line is not an empty string.
Merge pull request #1213 from dcarley/puppet_newline_output

Omit empty lines in Puppet provisioner output
Merge pull request #1209 from pbrisbin/arch-fix-3

Additional Arch host class fixes
Merge pull request #1191 from lorello/master

Fix change_host_name on Ubuntu Hardy
Remove the buildbot stuff, we'll move away from it.
Remove plugin activation. It really isn't necessary.

It was only used in a couple places and it isn't necessary since you can
do the loading within the actual blocks themselves.
Don't allow registry to be given value in non-block form