(maint) make SRV record lookup more generic
(#21785) Module tool should include path part of URI

The module tool ignored the path part of the URI when specifying a
custom module_repository setting.

Example:
puppet module install foo-bar --module_repository=‘http://forge.example.com/forge’

fetched http://forge.example.com/api/v1/releases.json?module=foo/bar
instead of
http://forge.example.com/forge/api/v1/releases.json?module=foo/bar

Same issue when it tries to fetch the file itself.
Enhance OpenBSD pkg.conf handling

This moves the pkg.conf parsing into it's own method which allows for better
re-use. While here, support for parsing '+=' lines has been added. This allows
for appending to PKG_PATH, instead of merely setting it with '='.

(#21930) Enchance OpenBSD pkg.conf handling
(22023) Implement :purgeable feature for OpenBSD package provider
(22004) Fix regex for retrieving flavor.

Previously a flavor like 'no_x11' would be truncated to 'no_x'.
https://projects.puppetlabs.com/issues/22004
Merge pull request #1798 from jasperla/pkgconf

Enchance OpenBSD pkg.conf handling
Merge pull request #1817 from jasperla/openbsd/purge

(#22023) Implement :purgeable feature for OpenBSD package provider
Merge pull request #1751 from dalen/generic_srv_records

(maint) make SRV record lookup more generic
Merge pull request #1812 from jasperla/openbsd/flavor

Fix regex for retrieving flavor.
Merge pull request #1773 from dalen/forge_relative_url

(#21785) Module tool should include path part of URI
(#18508) Add acceptance test for basic resource ordering
(Maint) Move Relationship_graph_wrapper into its own file and slightly refactor

Relationship_graph_wrapper stuck out like a sore thumb in the middle of
Puppet::Transaction. This is the first step to cleaning it up.
(Maint) Remove unused #applying? from Catalog

There don't appear to be any uses of this api private method anywhere in
the codebase. It wasn't technically marked as private, but it has no
clear purpose.
(Maint) Extract create_transaction
(Maint) Add preliminary YARD to Catalog#apply
(Maint) Move reporting catalog retrieval duration to the transaction

This is another step in removing dependencies between catalogs and
transactions.
(Maint) Decouple reports for logging from catalogs

Previously the catalog had to track if a report had been given for
logging. This encapsulates that relationship so that only the report
knows how to control the logging destinations.
(Maint) Remove commented code
(Maint) Remove weird thing in transaction tests

Can't understand what this does, but removing it had no noticable effect
on the tests.
(Maint) Make methods private in Transaction

Many methods in Transaction were public but should not reasonably be
considered public. This narrows Puppet::Transaction down to a
reasonable, and small, public interface.