(PUP-2944) Use osfamily to choose yum as a default

This commit changes the defaultfor from using the operatingsystem fact
to the osfamily fact. This is done so that we do not have to duplicate
effort of all the RedHat derivatives that use yum.

Signed-off-by: Charlie Sharpsteen <chuck@puppetlabs.com>
Merge pull request #2883 from Sharpie/pup-2944-yum-osfamily

(PUP-2944) Use osfamily to choose yum as a default
(maint) Cleanup specs for the `module` Face’s `install` action.

Prior to this change, the specs relied on a fragile chain of stubbed
expectations, which changes elsewhere in the application have rendered
incorrect and non-operational.

This change aims to improve these specs by stubbing less and making
more robust assertions about the data.
Merge pull request #2898 from pvande/maint/stable/cleanup-module-install-spec

(maint) Cleanup specs for the `module` Face’s `install` action.
(PUP-2943) Add PMT --ignore-changes

Prior to this commit there was no way to only ignore local changes to a module.
You had to --force when upgrading/uninstalling, which could potentially have other
repurcussions.
This commit adds the --ignore-changes flag, so a user can specify that they don't
care about local file changes but do not want to force anything else.
(PUP-2943) Uninstall/upgrade ignore changes spec

Adding more spec tests for the --ignore-changes flag on uninstall/upgrade
(PUP-2943) Clean ignore-changes uninstall logic
(PUP-2943) Update acceptance tests

Update wording to reflect --ignore-changes flag suggestion instead of --force.
Merge pull request #2899 from highb/fix/stable/pup-2943_ignore_changes_flag

(PUP-2943) Add PMT --ignore-changes flag
(maint) Confine enc_provides_node_when_store_configs_enabled to debian

This test has a long history of being weaned from troublesome platforms
where there are issues getting the packages installed.  The latest problem
child is centos5, now that epel is not enabled on our vcloud templates
by default.  So I'm just confining the test here to run only on debian
(except lucid, which is another problem child for this test).  Since
activerecord is slated to be removed as a store_configs backend in Puppet
4, this test is on the chopping block soon regardless.
Merge branch 'maint/stable/confine-store-configs-to-debian' into stable

* maint/stable/confine-store-configs-to-debian:
  (maint) Confine enc_provides_node_when_store_configs_enabled to debian
(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)
(maint) enable 'add_el_extras' for Beaker

Internally, we removed EPEL repos from our acceptance VM templates.
We found that, for our testing to be successful, we have a package
or two that comes from EPEL. This commit sets 'add_el_extras' to 'true'
so that Beaker can setup the EPEL repos on a SUT.
Merge pull request #2906 from rji/maint/stable/add_el_extras

(maint) enable 'add_el_extras' for Beaker
(maint) Never load facts when testing static compiler
Merge branch 'maint/stable/static-compiler-loadfacts' into stable
(PUP-2991) Restore ability to manage shells on solaris

Background: for PUP-1448 commit 73b0c2b0 added a new feature
for user providers `manage_shells`. The intent of that commit
was to add this feature to all existing user providers which
had that feature, and several were covered, but Solaris was
missed.

This commit simply adds the `manage_shells` feature to the
Solaris user provider, following up on the intent in PUP-1448.
Merge pull request #2926 from kylog/issue/pup-2991/solaris-manage-shells

(PUP-2991) Restore ability to manage shells on solaris