(PE-2586) Support using frictionless install for upgrades

We now only use frictionless install for versions that support it. This
way we can test frictionless upgrade (which is identical to install)
from non-frictionless installs of older versions, while also testing it
from frictionless installs for versions that support it.
(QA-747) Log the amount of time each command takes to execute

Previously, there was no way to tell how long each beaker command took
to execute on a remote VM. I would like to know this information to
track down a timing issue in acceptance testing on Windows.

This commit modifies the host object to log timing information when
beaker is run in debug mode. It uses the same logging prefix as is used
when displaying the executed command, e.g.

    a4e5hyo2m0ooom1 (master) $  cp /etc/puppet/puppet.conf ...
    a4e5hyo2m0ooom1 (master) executed in 0.01 seconds
Provide way to install from public repos

This commit adds an `install_puppet` DSL method that may be used to
simply add the public Puppet Labs repositories and install puppet.
Merge pull request #118 from anodelman/make-gem

create beaker 1.3.2 gem
Merge pull request #114 from joshcooper/issue/master/QA747-Add-timing-info

(QA-747) Log the amount of time each command takes to execute
Merge pull request #108 from hunner/install_puppet

(QA-720) Provide way to install from public repos
Merge pull request #112 from nicklewis/upgrade-frictionless-agents

(PE-2586) Support using frictionless install for upgrades
cut a beaker 1.4.0 beaker gem