(DOC-565) Improve description of package type's package_settings property

This commit aims all scrutiny at the provider documentation, and clarifies our
advice for provider developers.
(DOC-698) Revise doc text for modulepath, environmentpath, and friends

These settings wanted some more clarity about the nature of the deprecation and
the nature of the recommended path forward. I also took the chance to move away
from links.puppetlabs.com for a URL whose permanent address we know today.
(maint) Update dir env links in deprecation warning and example env README file

Since we know the permanent URL of this page, we should use it directly.
(PUP-2093) Improve documentation and test names.

Prior to this commit, there were a number of places where documentation
was missing and test names were insufficiently descriptive.  This commit
adds additional clarity around those places, and makes a couple of code
clarity changes as well.
Merge pull request #2546 from hlindberg/pup-2176_followup

(PUP-2176)(PUP-2035) Followup on function API / Puppet Functions
Merge pull request #2535 from hlindberg/pup-2241_add-logging-functions-to-static-loader

(PUP-2241) add logging functions to static loader
Merge pull request #2540 from nfagerlund/apr_2014_docs_fixes

Apr 2014 docs fixes
Merge pull request #2533 from nespresso/fix/master/resource_paser_error_message2

(PUP-2101) resource parser: add the resource name on the validation e…
(maint) Use current facter api (previous was phased out in facter 2)
Merge pull request #2551 from kylog/maint/update-parallel-spec-task

(maint) Use current facter api (previous was phased out in facter 2)
(PUP-2080) Remove puppet language function loading

The functions in the puppet language are a great idea, but one that we
are not yet ready to implement, document, test, and debate at this time.
(PUP-2080) Remove function in the puppet language

This is a desired feature, but a distraction from our current goals. The
'function' keyword needs to be reserved as part of PUP-1027 and so I've
left it in as a portion of the grammar.
(maint) Fix quotes in hiera config for dynamic_environments test
Merge pull request #2550 from kylog/issue/pup-1712/trusty-acceptance

Issue/pup 1712/trusty acceptance
(PUP-2143) Implement :enableable for OpenBSD service provider

Before now, Puppet has been unable to enable services on OpenBSD.

This work implements a flags property that is manages the content of the
rc.conf.local file, used by OpenBSD to define service runtime options
and enable services.

The flags property may also be used by other platforms, such as FreeBSD.
(PUP-2303) Fix arguments of ArgumentError

Yo dawg, I heard you like ArgumentErrors so I put an
ArgumentError in your ArgumentError.

This makes errors in fileserver config much more readable and
easier to find.
Merge pull request #2552 from zaphod42/revert/master/pup-2080-remove-puppet-functions

(PUP-2080) Remove function in the puppet language
(PUP-2093) Migrate all PMT code to use JSON.

Prior to this commit, there were scattered bits throughout the PMT code
that still lived under the tyranny of PSON.  Since we've now officially
adopted a dependency on the JSON gem everywhere, our code should run
free and flourish in the new world, where JSON processing is handled
through a less ridiculously named constant – this change fully realizes
that new world for the PMT.
(maint) Fix documentation of Puppet::ModuleTool.environment_for_options

This method was erroneously documented as returning `void`.
Merge branch 'pull-2495'