Add the s3_enabled property to the yumrepo type

This allows you to access S3 repos using the yum-s3-iam plugin
(#21470) Change validation of "storeconfigs" to reflect runtime state.

The problem was that the validator is written with static validation
in mind - not considering if storeconfigs are on or not.
Since we are currently only using the validator to validate for the
current runtime, this commit changes the behavior to consider the
runtime storeconfigs state and marking the related issues as :ignored if
storeconfigs is on.

A user that wants to use Puppet as a library will need to configure the
validation / issue options accordingly (the manifests will be validated
as per the settings of the puppet runtime used to run the validation).

This is easily done by using a different severity producer.
(maint) Remove unused exception class
(maint) re-indent file
(#21307) Refactor WatchedFile class

The watchedfile class was extracted from another location but had some
remnants of old behavior. In addition it would treat missing files as
always changed, which could lead to undesired behavior around trying to
reload missing files.

This commit refactors the WatchedFile to use a single timestamp value
and assume that the file is unchanged if the file timeout period has not
elapsed.

In addition this commit also treats file absence as a valid state.  If a
file is missing between two checks it will be treated as unchanged.
(#21087) Debug output for all augeas error nodes

Adds debug output in cases where augeas has error nodes without children. This
specifically addresses the case where an incorrect lens name is specified, and
may provide better output for other cases as well.

Thanks to Jan Vansteenkiste for the implementation of the fix.
(packaging) Remove createpackage.sh from puppet

This shell script has been replaced and superceded by the packaging rake tasks.
Running `rake package:bootstrap` followed by `rake package:apple` will build a
dmg locally in a similar manner to this script.
properly handle max version on ppc debian
(Bug #21768) Update puppet for F19

Prior to this commit, there was no support for Fedora 19. This
commit modifies build_defaults to include F19 in the mocks,
and removes the ruby(abi) requirement. This is because F19 no
longer provides ruby abi.
Refactor to remove 'LogPath' module

In preparation for #21805, I stumbled across some coded that
seemed unnecessarily complex.  Since my changes for #21805
will end up interacting with some of this code, I decided
it was worth a quick refactor.  This commit removes the
`Puppet::Util::LogPaths` module and simplifies all of the
code that was interacting with it.
(#21805) Add containment path to report resource_status

This commit adds a new attribute the `Puppet::Resource::Status`
class, called `containment_path`.  The value is an array of
strings that indicates the types and classes that the resource
is contained within.  (The format is the same as what we show
in the log messages during an agent run.)

This data will be used by PuppetDB to allow queries by class,
which will return resources that are contained within the
specified class.
Merge pull request #1765 from phinze/21087-no-debug-logging-when-augeas-lens-is-incorrect

(#21087) Debug output for all augeas error nodes
Merge pull request #1768 from haus/remove_create_package_sh

(packaging) Remove createpackage.sh from puppet
Improve documentation for pathbuilder methods
(maint) Remove publicize_methods from specs

This was a bad idea.
Merge pull request #1775 from melissaanne/maint/stable/f19-updates

(Bug #21761) Update puppet for F19
(packaging) Remove PackageInfo.plist, it is no longer used by packaging.
Merge pull request #1781 from haus/remove_package_info_plist

(packaging) Remove PackageInfo.plist, it is no longer used by packaging.
(#6112) Memory indirector for cert generate specs

This second test case is an attempt to begin re-writing the
CertificateAuthority specs in a style which does not rely so heavily on
mocking the internals of methods, particularly for initialization.

Many of the specs in the proceeding test case end up looking like inverse
descriptions of the methods under test (expect this call, then that call,
then this other call), because there are so many side effects to
CertificateAuthority methods and dependencies on other SSL components which
are themselves indirected.  It is unclear whether we are really
testing the code.

Based on Patrick Carlisle's suggestion of using memory indirectors for the
various SSL endpoints, this new test case worries less about unhooking
CertificateAuthority from all its dependencies, and more about testing the
results of methods.  CertificateAuthority initialization still requires some
mocking but I've tried to isolate it more from the tests.

If we like this approach, we should begin moving tests from the first test
case into this one.

It would probably also be good to create an integration test for the SSL
library that more rigorously tests the interaction between SSL components
through CertificateAuthority.
Merge branch 'stable'