(#19514)(PP-773) Rename hashed_node_data and cliencert for $trusted

This renames hashed_node_data to trusted_node_data, and
the element 'clientcert' to 'certname'.

This also fixes the issues regarding immutability reported in PP-773.
It is now not possible to alter the trusted data. (A freeze was missing
when the data was created). As extra precaution, the data is frozen when
set as trusted data in the node.

There is now also a warning if an attempt is made to modify the trusted
data by manipulating a node.
Merge pull request #2083 from zaphod42/jpartlow-feature/7244/refactor-autosign-setting

(#7244) Consolidate autosign setting
(#7243) Add dns_alt_names with hostname to autosign test

Lack of hostname as a dns_alt_name was producing master certs which
could not be looked up by bare hostname (as used by Beaker) in the
Jenkins environment.
Merge branch 'feature/7243/fix-autosign-command-acceptance-subjectaltnames'

* feature/7243/fix-autosign-command-acceptance-subjectaltnames:
  (#7243) Add dns_alt_names with hostname to autosign test
(#19514) Correct error message matching for Ruby 1.8.7

In Ruby 1.8.7, the error message for an attempt of mutating
a frozen hash refers to 'hash' using lower case whereas later versions
use capital 'H'. This caused two tests to fail (twice).
Define Puppet cert attribute OIDs

This commit defines an initial set of OIDs for private use within Puppet. The
defined OIDs are focused toward identifying node information that is
embedded in a node certificate.
Merge pull request #2085 from adrienthebo/feature/puppet-custom-oids

Define Puppet cert attribute OIDs
Merge pull request #2084 from hlindberg/issues/issue-19514

(#19514)(PP-773) Rename hashed_node_data and cliencert for $trusted
(Maint) Add memory terminii for CR and Key

These are sometimes useful in tests when we don't want to deal with
saving the certificates to disk, but will want to allow them to be saved
somewhere.
(#23116) Provide pluggable SSL verification

This provides the ability to create a verifier for SSL connections
opened with puppet's Puppet::Network::HTTP::Connection. The verifier is
provided the Net::HTTP connection and it just needs to configure it for
the correct verification mode.

The new functionality can be used when puppet's standard SSL
verification rules are not suited to the needs of the caller. The
impetus for this was a requirement that a connection be able to be made,
the certificates checked, but the subject and alt name checks skipped.
Rather than put that directly into puppet, this allows a new validator
to be written that performs those checks.