(MAINT) Log an error when docker image is not set, empty or nil
Merge pull request #279 from electrical/docker_input_validation

Log an error when docker image is not set, empty or nil
(QENG-740) Insert a flag into the options hash when doing a PE upgrade
(QENG-743) Beaker options hash 'merge' should not modify the...

...global settings
- merge was behaving like merge!
- merging two OptionsHash objects should result in a new OptionsHash
  and not affect the original hashes at all.
Merge pull request #287 from branan/qeng-740

(QENG-740) Insert a flag into the options hash when doing a PE upgrade
Merge pull request #288 from anodelman/options-hash-merge

(QENG-743) Beaker options hash 'merge' should not modify the...
create beaker 1.12.1 gem
Merge pull request #291 from anodelman/make-gem

create beaker 1.12.1 gem
(QENG-713) add 'puppet_tmpdir' method

Add a 'puppet_tmpdir' method in Unix::File that creates temporary
directories which are owned by the puppet user.
add test case and docs for 'puppet_tmpdir' method
use DSL to access --configprint value
Adds create_tmpdir_on DSL method.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Update to create_tmpdir_for_user_on, add spectests

This commit as spec tests which include several additions to spec/mocks.rb to
support the use of `host.tmpdir` and `execute` when using FakeHost. In support
of these is the FakeCommand which works around the fact that these FakeHost
commands don't have access to the same objects as the context in which
FakeHost.exec is used.

Also removes test for Unix::Host.puppet_tmpdir

Signed-off-by: Wayne <wayne@puppetlabs.com>