(QE-364) have beaker 'chomp' stdout from execution result

- create dsl helper to access facter facts
(QE-204) allow for use of local vagrant file when using --no-provision

- use already set up vagrant boxes when running with --no-provision
(QE-451) stop run when vagrant commands fail

- check exit codes of vagrant commands
- raise an error if vagrant commands fail
repair spec test
cleaner re-use of vagrant boxes, review comment fixes
(QE-502) beaker should support --version
(QE-46) Beaker includes Test::Unit specific code

- this was an issue with test::unit having autorun on by default,
  resulting in log spew when shutting down beaker
Pessimistically lock down runtime and transitive dependencies
Merge pull request #48 from anodelman/fix-vagrant

(QE-204) allow for use of local vagrant file when using --no-provision
Merge pull request #51 from anodelman/vagrant-error-out

(QE-451) stop run when vagrant commands fail
Merge pull request #56 from anodelman/facter-shortcut

(QE-364) have beaker 'chomp' stdout from execution result
Merge pull request #67 from anodelman/add-version

(QE-502) beaker should support --version
Merge pull request #70 from anodelman/silence-test-unit

(QE-46) Beaker includes Test::Unit specific code
(QE-439) beaker is not catching rbvmomi exceptions when cleaning up vCloud VMs

- catch RbVmomi::VIM::ManagedObjectNotFound and handle appropriately
(QE-519) beaker should raise error if host does not have a platform set

- beaker tries to do crazy things when hosts aren't on supported
  platforms, let's check that option right at the start
Define host method to check for file existence
Gracefully handle lack of puppet.conf

When `#with_puppet_running_on` is executed, it attempts to back up
puppet.conf and replace it for the duration for the test. The old
behavior of the code would always try to back up the file regardless of
the existence of the file, and would fail when the copy failed. This
commit ensures that the puppet.conf file is only backed up when present,
and the temporary puppet.conf is returned to the original state
when the method returns.
Use Beaker::Command when working within hosts
Merge pull request #57 from anodelman/vcloud-cleanup

(QE-439) beaker is not catching rbvmomi exceptions when cleaning up vCloud VMs
Rename `fact` to `fact_on` for uniformity

The DSL method `fact` was recently added, but most dsl methods take the
form of `<method>_on` for multi-node functions and `<method>` for
running on a default node. This makes `fact_on()` run on designated
nodes, and `fact()` run on the default node.