work with separate master/agent certs on master

This makes sure the agent's server is the same as the master's certname
and will sign the console/master/database cert in case an agent on those
boxes has a unique cert
ensure weve requested a cert....
support for package installation on sles SUTs

- using 'zypper in' for installation
- using 'zypper rm' for removal
QE-348 - beaker can't run puppet on 64 bit windows hosts

- use "Program Files" on win32 windows host
- use "Program Files (x86)" on win64 windows host
fix per branans comments
fixup spec test
Merge pull request #29 from anodelman/sles-pkg-install

support for package installation on sles SUTs
Use PE 3.0 answer gen for all 3.X
Merge pull request #27 from justinstoller/maint/master/breaking_my_world

work with separate master/agent certs on master
Merge pull request #31 from branan/3x_answers

Use PE 3.0 answer gen for all 3.X
Allow 2 as exit code when non-agent cert submit

We have nodes with more-than-just-an-agent ensure they've
checked in prior to signing certs (in case they do not follow default
naming schemes). Unfortunately in some cases the agent will also change
the system, returning 2. This is valid behavior.
Merge pull request #32 from justinstoller/bug/master/allow_2

Allow 2 as exit code when non-agent cert submit
creation of fusion spec tests
creation of vagrant spec tests
creation of blimper spec tests
creation of aixer spec tests
creation of solaris spec tests
fix for fusion specs run on non-mac
fixes for hyperviser spec tests

- move shared code to helpers.rb
- general cleanup
Merge pull request #30 from anodelman/win64

QE-348 - beaker can't run puppet on 64 bit windows hosts