(#12309) Refactor deprecated uses of Util.execute

* Improve logic of deprecation_warning
* Add utility method for logging deprecation warnings to a file
* Refactored all references of Puppet::Util.execute to call Puppet::Util::Execution.execute
(#7485) Support zypper 0.6 with zypper package provider

Zypper version 0.6.104 which is the default version on SLED 10 does not
support the --quiet flag. It only supports the --terse flag from
rug.
Zypper version 0.6.13 on OpenSuSE 10.2 does not support the auto agree
with licenses and this flag is not used.
Tested on:
SLE 10.2, 11.0, 11.1
OpenSuSE 10.2, 10.3, 11.1, 11.2, 11.3, 11.4
Merge pull request #232 from kscherer/ticket/2.7.x/7485-zypper-0.6-support

Ticket/2.7.x/7485 zypper 0.6 support
(#12405) Remove obsolete storeconfig purging code.

Now that `puppet node clean` can remove storeconfig data for a system, we can
eliminate this external bit of code.  There is nothing that this does that the
better integrated tool didn't already do.

Signed-off-by: Daniel Pittman <daniel@puppetlabs.com>
(#12339) Clarifying source attribution.
Merge pull request #453 from jeffweiss/ticket/master/12401_remove_files_that_should_have_been_removed_earlier

(#12401) Remove files that should have been removed earlier
(#12399) DRY up rest.rb

Move the calls to request.do_request(...) to a method to encapsulate
the params
Merge branch 'refactor/master/12399-don't-repeat-yourself'
Merge pull request #454 from cprice-puppet/refactor/master/12309-posix-util-exec-cleanup

Refactor/master/12309 posix util exec cleanup
(#12349) Order stderr output to fix acceptance test for `module list`

The stdout was ordered, but not the stderr, so the acceptance tests that
passed on my system failed when run by CI.

To order the stderr output I changed the format of the method that gets
unmet dependencies to be a hash that contains the dependency module name
in addition to the error message so that I could sort by that name.

There's also some additional documentation updates to the list command
to show example error output for unmet dependencies.

I changed the unsatisfied_dependencies method to unmet_dependencies
since in future changes that's how dependency problems will be described
to the user, and it's shorter.
(#12309) Fix broken rspecs
Merge branch 'ticket/2.7.x/12349-order_module_list_stderr_output' of https://github.com/mmrobins/puppet into 2.7.x

* 'ticket/2.7.x/12349-order_module_list_stderr_output' of https://github.com/mmrobins/puppet:
  (#12349) Order stderr output to fix acceptance test for `module list`
Merge pull request #460 from cprice-puppet/refactor/master/12309-posix-util-exec-cleanup

(#12309) Fix broken rspecs
(#12402) split log messages into individual lines before sending to syslog
(#12309) Fix broken module_spec.rb
Merge pull request #461 from cprice-puppet/refactor/master/12309-posix-util-exec-cleanup

(#12309) Fix broken module_spec.rb
Maint: Clarify ancient text about directories of symlinks

This commit replaces some unclear text about "recursive symlinks" that dated
from 2006.
Maint: Improve documentation of file type's source parameter

This commit tightens up the huge description of the source attribute, by:

* Explaining the recommended puppet URI format instead of the complete format
* Fixing a misleading example to use puppet URIs instead of local files
* Calling out the source/content/target trichotomy
* Inserting an example of how module layout maps to puppet URIs
Maint: General improvement of file type parameter doc strings

This commit clarifies several descriptions.
(#12412) Refactor puppet_resource('user') tests

Previously the Linux-specific logic for validating
puppet_resource('user') was contained within each 'user' test case. In
order to support executing resource acceptance tests on non-Linux
agents, I could have added if-then-else statements to each test case,
though that would lead to logic-sprawl.

This commit refactors the existing set of 'user' acceptance tests to
use native commands to validate that the tests work on any supported
agent platform. Specifically, that puppet_resource('user') can create,
modify, delete, query, and query_all, and that it doesn't try to
delete a non-existent user, or add a user that already exists.

The goal of these tests is to validate that puppet_resource "works"
with user resources, and can therefore be trusted to validate the
results of subsequence acceptance tests.

The commit also preserves tests that exercise unique behaviors,
e.g. should_create_with_gid.