(PUP-2369) Add class to the message we return.

Add the class of the values we're changing from and to in the message
that's being returned. At the very least this will give developers a
hint about the types they're comparing explaining possible weird
behaviour.
(doc) Improve description of certname setting

This commit mentions our recommendations for certname values, as well as the one
reserved certname of `ca`. It also adds some context about what the certname is
used for.
(doc) Improve description of recurse, recurselimit, and purge attributes

The file type's `recurse` attribute didn't really explain what it did, and
didn't accurately describe the difference between `true` and `remote`. This
commit clears that all up.
(doc) Exec type: Clarify that onlyif/unless use exit codes, not stdout

This commit also clarifies that they use the same provider as the main command.
(doc) List order of log levels in description of the loglevel metaparameter
(doc) List allowed log levels in description of the log_level setting
(doc) Update package provider descriptions for install/uninstall options support.

Updating package provider descriptions to document support for install_options and uninstall_options.
(docs) Fix wording on environment_timeout setting

Including the AS_DURATION snippet (which is a complete sentence) midway through
a sentence results in wacky wording. This commit fixes it.
(maint) Print yard error message to STDERR, not STDOUT

As this is an error/warning, the output should be put to STDERR instead
of STDOUT so it can be easily filtered.
(PUP-1736) Log Application runtime information

Add a debug message to the startup sequence of Puppet applications that
contains information about the runtime environment. Currently the following
pieces of information are logged:

  - Puppet Version
  - Ruby Version
  - Puppet Application Run Mode
  - Runtime locale if Ruby Version >= 1.9.3
(doc) issue warnings to certificate does't match

issue warnings when certificate between master and agent doesn't match.
At the moment the message says to execute rm -r certificate but it doesn't solve the problem, need to erase the private key too.
This code shows the right command to execute.
to test this erase your certificate and key from the agent using the command below and try use puppet agent -t again.
find $(puppet master --configprint ssldir) `facter fqdn`.pem -delete
(doc) more specific warning for certificate matching issues

This adds a bit more information on commands to run, in particular with
the addition of how to delete the cert on windows agents.
Merge pull request #2589 from daenney/add-ensure-type-logging

(PUP-2369) Add class to the message we return.
Merge branch 'patch-1'

* patch-1:
  (doc) more specific warning for certificate matching issues
  (doc) issue warnings to certificate does't match
Merge pull request #2594 from nfagerlund/docs_certname_setting

(doc) Improve description of certname setting
Merge pull request #2569 from Sharpie/log-locale

(PUP-1736) Log master and agent locale information
Merge pull request #2582 from nfagerlund/docs_exec_onlyif_unless

(doc) Exec type: Clarify that onlyif/unless use exit codes, not stdout
Merge pull request #2591 from nfagerlund/docs_file_recurse

(doc) Improve description of recurse, recurselimit, and purge at...
Merge pull request #2581 from nfagerlund/docs_loglevel_order

(doc) List order of log levels in description of the loglevel metaparameter
Merge pull request #2600 from nfagerlund/docs_loglevel_setting

(doc) List allowed log levels in description of the log_level setting