(#17183) Pass on parameters to recursive children in static_compiler

Pass on parameters from the top level resource to recursive children in
the static compiler.
The list of parameters to exclude is taken from the file type
implementation.
(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.
Propagate client noop value as a fact

This fixes: http://projects.puppetlabs.com/issues/6847

(which is also a workaround for: projects.puppetlabs.com/issues/20679)
(maint) Clean up comments for Resource::Type
(#21881) Add YARD docs for the format used by Puppet::Resource::Type
(#21881) Validate ResourceType against a json schema in tests
(#21881) Add documentation for Puppet::Indirection::ResourceType::Parser

This clarifies the use of this indirection somewhat and conforms better to
YARD syntax.
(doc) Add other markdown files to YARD
(#21881) Add API docs to YARD

This adds an api_docs directory with static markdown files which get included
in YARD output. The first thing documented is the resource_type http endpoint.
(doc) Clarify a couple of comments under lib/puppet/

- 'should not be used in preference to' as 'should be avoided in favor of'
- '25K to 300 symbols to strings' as '25K symbols vs. 300 strings'
(maint) Various fixes (whitespace, etc)
(maint) Spelling fixes for code comments

'acutal' to 'actual'
'allowal' to 'allowable'
'cahe' to 'cache'
'corrosponding' to 'corresponding'
'dafault' to 'default'
'defauls' to 'defaults'
'defualts' to 'defaults'
'follwing' to 'following'
'manageing' to 'managing'
'managhome' to 'managehome'
'matchin' to 'matching'
'pupet' to 'puppet'
'repositry' to 'repository'
'terminii' to 'termini' (per Oxford, 'termini' or 'terminuses')
'ths' to 'this'
(maint) Typo fixes for code comments
Merge pull request #1801 from floatingatoll/patch-3

various documentation fixes
(#21881) Add error responses to resource_type http api

Adds responses seen for general cases of bad request or resource not
found when using the http api for resource_type.
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
(21881) Adds explantory text and fixes for YARD

From Nick Fagerlund:

Add explanatory text; modify the manifest to not throw an error. Add
node definitions.

Rename files (and any references to them).

Use indented code blocks instead of fenced ones

Our docs toolchain can't handle fenced code blocks yet, and we're going to need
to put this content in multiple places, so it must use least-common-denominator
markdown syntax.

Anchor links are not reliable in YARD

...so we should avoid them and describe anchor positions with English.
Merge pull request #1803 from jpartlow/issue/21881-document-resource-type

(#21881) document resource type
(maint) Remove rspec requires from the Rakefile

In the Rakefile, we no longer use Rspec methods or classes, but instead shell
out to rspec, so requiring rspec serves no purpose in the rakefile. The require
was also incorrectly placed within an unrelated begin/rescue block, which
caused deprecated rake libraries to be loaded when rspec was not present. This
commit removes it from the Rakefile.