(PUP-2432) Simplify spec_helper in module skeleton
(PUP-2871) Add :install_options and :uninstall_options to the pacman provider

Without this patch, a user unfamiliar with the pacman provider might write
attempt to add flags to install and uninstall, not knowing that they will fail.
This patch adds support for these two flags to ensure a more cohesive experience
across puppet.
(maint) Add real case for autosign cert generation test

Nate Wolfe noticed what looks like a copy paste error in my original
ssl/puppet_cert_generate_and_autosign.rb test that was repeating the
cert generate with autosign false and dns_alt_names case for the
autosign true and dns_alt_names case. This commit replaces that with
tests using autosign true, which on master with ca fails, and requires
manual signing with --allow-dns-alt-names flag.
(doc) Document user :system param only applies on create
(doc) Fixes simple typo in 'parser' section.

Also present in https://github.com/puppetlabs/puppet-docs repo. Related Pull Request submitted: https://github.com/puppetlabs/puppet-docs/pull/345.
Merge pull request #2850 from adrienthebo/doc/master/user-system-parameter

(doc) Document user :system param only applies on create
Merge pull request #2861 from jpartlow/maint/master/fix-puppet-cert-generate-testcase-with-autosign-and-dns-alt-names

(maint) Add real case for autosign cert generation test
(PUP-2882) Correct acceptance test for single version module upgrade

Before this commit, the acceptance test for upgrading a module which
only has one version was expecting old error messages. This commit
corrects the acceptance test to expect the new error message.
Merge pull request #2901 from andersonmills/bug/master/pup2882-acceptance_test_change_for_only_one_module_version

(PUP-2882) Correct acceptance test for single version module upgrade
(doc) Update ssh keys docs to note that they are not hex
Merge pull request #2902 from jpartlow/pull-2894

(doc) Update ssh keys docs to note that they are not hex
(docs) Clarify documentation about --logdest, puppetdlog, masterlog, and masterhttplog
Merge pull request #2887 from Yggdrasil/patch-1

(doc) Fixes simple typo in 'parser' section
Merge pull request #2891 from nfagerlund/docs_apply_logdest

(docs) Clarify documentation about --logdest, puppetdlog, masterlog, and...
(maint) Add test to ensure upstart is default init daemon in Ubuntu
(PUP-2936) Fix checksum during PMT build

Prior to this commit `puppet module build` was checksumming the source directory
and putting that in checksums.json.
This commit corrects that behavior so it checksums the built module instead.
(PUP-2936) Add warning for 'checksums'

This commit adds a warning to `puppet module build` when it finds a 'checksums'
field in metadata.json. This was done to make people aware of the fact the field
is deprecated and will not be used by the builder, although the installer/upgrader
and other module tools will use the field if checksums.json is not present.
Merge pull request #2897 from highb/fix/stable/pup-2936_pmt_checksums

(PUP-2936) Fix checksum during PMT build (stable branch)
(PUP-2757) Check for env change before updating Configurer context

Previous work on PUP-2757 ensured that resource references would use the
current environment and that agent runs would use a correctly
initialized 'remote' reference environment, but, ironically, Charlie
Sharpsteen found that the fixes for agent runs re-introduced the
duplication of initial environment import in the Puppet apply case.
Removing that duplication of effort was the reason for the initial
change.

This commit tests whether the environment has changed, which it should
only do in the agent case, and, if not, pushes the original env onto the
context stack.  We push regardless, so that we don't have to guard the
corresponding pop.
(PUP-2882) Detect when module is not on forge

Prior to this commit it was unclear when upgrading a module not found on the forge
wether there was no available upgrades on the forge or the module was simply not
on the forge.
This commit adds a check before even attempting graph/dependency resolution to
see if the module exists on the forge and quits if it is not.