(PUP-3676) Move OpenSSL::X509::Name calls in util/ssl.rb

This commit moves the initialization of a couple of constants in
`Puppet::Util::SSL` down into the body of the `subject_from_dn` method.

The purpose of the change is to avoid having this initialization, which
involves creating `OpenSSL::X509::Name` objects, be done when Puppet is
running under Puppet Server.  We've been trying to avoid calls into
JRuby OpenSSL as doing so has caused many problems for Puppet Server.

The `subject_for_dn` method is the only code which referenced these
constants and `subject_for_dn` is only called by the Rack HTTP handler,
which is not used by Puppet Server.
(PUP-1293) Don't ignore status when using upstart provider

Since the upstart provider is overriding the status function,
it also overrides the default behaviour from the base service provider.

With this patch, if the status resource exists or hasstatus is set to false,
the default behaviour, from the base provider, will be invoked.
(maint) Remove unused scope from closure call_by_name

The big removal of 3x parser/ast missed to remove the unused scope
that was present in Closure#call_by_name.

This commit removes the unused scope, and corrects a typo in code that
supports use cases not yet merged to master (if invoked would cause a
hard stop on undefined variable 'scope').
(PUP-1802) Update SHA to puppet_for_the_win

Updates SHA to puppet_for_the_win to incorporate fix to start service
directly with ruby.exe instead of using a wrapper. This avoids warnings
in the service control manager; see PUP-1802 for details.
Merge pull request #3330 from MikaelSmith/bug/master/PUP-1802-update-p4tw

(PUP-1802) Update SHA to puppet_for_the_win
(PUP-3274) Remove acceptance setup step to set parser

The old parser/evaluator have been removed, and there is no longer a
:parser setting and switch. The acceptance setup step which allowed the
setting of 'parser' in puppet.conf prior to a run is therefore obselete
and now being removed.
(PUP-3140) Include faulty number in Illegal Number Parser Error

Before this commit whenever an invalid number was found in a manifest
the lexer would raise an "Invalid Number" error without any context as
to what number was invalid. This commit changes the behavior to show
what number was an issue.
Merge pull request #3332 from demophoon/improve/master/pup-3140-error-illegal-number

(PUP-3140) Include faulty number in Illegal Number Parser Error
(maint) Do not add delivery domain to generated hosts

...unless it is missing. Earlier versions of Beaker, I believe, provided
a host name that was not an fqdn, and when our Rakefile was creating a
config to allow Beaker to be re-run against preserved hosts, it would
add the delivery domain. Now, hostnames are being found fully qualified
in the logs, and we need to only add the domain if the hostname is not
qualified.

This commit also refactors the code that releases vms to make use of the
internal vmpooler rather than relying on Beaker::VcloudPooled, whose
interface may change.
Merge pull request #3333 from jpartlow/issue/master/pup-3274-remove-set-parser-acceptance-step

(PUP-3274) Issue/master/pup 3274 remove set parser acceptance step
(PUP-1362) (PUP-1775) remove :python command

No longer needed after removal of yumhelper.py
(PUP-1362) (PUP-1775) map yumhelper.py's -e & -d flags to yum

The -e & -d flags to yumhelper.py had different semantics than yum's -d & -e
flags.  The yum equivalent option flags are --enablerepo & --disablerepo.
(PUP-2927) Enable Facter debugging with debug option.

Enabling Facter debugging when the debug option is given to Puppet.
(PUP-2927) Enable Facter stack traces with trace option.

Enabling Facter stack traces when the trace option is given to Puppet.
(PUP-2927) Route Facter logging through Puppet's log.

If using a recent version of Facter that supports Facter.on_message,
Puppet will now route Facter's logging through Puppet's log with a
source of "Facter".

This supresses Facter debug/warning message output in favor of letting
Puppet handle the messages.  This also results in Facter's logging
ending up in the report.
(maint) Replace Facter[].value calls with just Facter.value.

There are a few remaining Facter[:name].value calls remaining.
We use the shortcut method Facter.value throughout Puppet's source, so
removing these calls in favor of the simplier Facter.value call.
(PUP-3700) Deactivate invalid actions on faces

Instead of documenting that certain actions are invalid they should
be removed instead.

Add the deactivate_action on faces to do this
Merge pull request #3331 from peterhuene/pup/2927

(PUP-2927) Improve Facter logging integration.
(maint) use opencsw for ruby19 temporarily on solaris11

This change installs ruby19 on solaris11 from opencsw.
Without this change acceptance cannot run.
Once the vmpooler templates are update to solaris11.2
this should be replaced with a more "native" ruby19 installation.
Merge pull request #3340 from er0ck/maint/master/temporary_ruby19_install_method_for_sol11

(maint) use opencsw for ruby19 temporarily on solaris11