(PUP-838) FFI Puppet::Util::Windows::Process module

- Remove  dependency on windows/process, windows/handle, and
   windows/synchronize, all part of windows-pr (which is not a gem that is
   currently FFI-ed, even in the latest release)
- Add WAIT_TIMEOUT from Windows::Synchronize
- FFI WaitForSingleObject
- FFI GetExitCodeProcess
Merge pull request #2693 from kylog/maint/remove-failing-travis-jobs

(maint) Remove travis jobs which we know are failing to speed up travis ...
(PUP-838) GetExitCodeProcess checks FFI::WIN32_FALSE

 - This adds a fixup after reworking changes related to getting the proper
   boolean on windows.
(maint) Use the travis config used on master to workaround rvm issues
Merge branch 'stable'

Conflicts:
	.travis.yml
Merge pull request #2676 from Iristyle/ticket/master/PUP-840-FFI-Windows-Colors

(PUP-840) FFI Puppet::Util::Colors
(PUP-838) Process uses LookupPrivilegeValueW

 - Switch from LookupPrivilegeValueA to LookupPrivilegeValueW
 - In reality, this doesn't absolutely need to be done, but for the sake
   of consistency with other API calls, we use W suffixed functions
 - Add 2 tests that confirm that our usage of the Win32 API call is
   correct
(PUP-838) Use FFI helpers read_handle / read_dword
Merge branch 'ticket/master/PUP-838-FFI_Windows_Process'

* ticket/master/PUP-838-FFI_Windows_Process:
  (PUP-838) Use FFI helpers read_handle / read_dword
  (PUP-838) Process uses LookupPrivilegeValueW
  (PUP-838) GetExitCodeProcess checks FFI::WIN32_FALSE
  (PUP-838) FFI Puppet::Util::Windows::Process module
  (PUP-838) Move FFI code to bottom of process.rb
(PUP-2660) user: set the user should-value when generating ssh_authorized_keys

When purging authorized SSH keys, the user type generates ssh_authorized_keys
resources using eval_generate. The ensure property receives a should value of
"absent" so the keys are removed. However, those resources are non-functional
because the user property lacks a should value. The resource fails during
Provider::Ssh_authorized_keys::Parsed#flush.

Fixed by setting the appropriate user value for each generated key.
(PUP-121) Make examples for relative/absolute shared

This makes the examples that test include, require, contain
share the same tests.

This also adds one missing error condition.
(PUP-2360) Yumrepo type allows invalid values

None of the regexpes was actually looking for the whole value to match,
just any part of it would suffice.
Merge branch 'pull-2575'
(PUP-2478) Remove current directory from Ruby load path.

The current directory ('.') is on the load path for Ruby 1.8.7.
This is a security vulnerability as it allows arbitrary code loading if
users create ruby source files with names that correspond to those that
puppet is trying to load.

The fix is to explicitly remove '.' from the load path before any code
is loaded by puppet.
(PUP-2533) Apache 2.4 requires explicit CRL configuration

In Apache 2.2, if either the SSLCARevocationFile or SSLCARevocationPath
directives were specified then the specified file(s) would be checked
when establishing an SSL connection. Apache 2.4+ the
SSLCARevocationCheck directive was added to control how CRLs were
checked when verifying a connection and had a default value of none.
This means that Apache defaults to ignoring CRLs even if paths are
specified to CRL files.

This commit updates the debian postinst script for the
puppetmaster-passenger package to set SSLCARevocationCheck directive to
'chain' when Apache 2.4 is installed. This ensures that the the
puppetmaster-passenger vhost respects CRL files in the same way that
Apache 2.2 does by default.
Apache 2.2
(maint) extract initial Passenger configuration
(PUP-2533) Insert SSLCARevocationCheck on upgrade
(packaging) Update PUPPETVERSION to 3.6.2
(PUP-2663) Allow string to contain leading sign in numeric conversion

This makes it possible to use an unary +/- in a string. The sign
of the converted value abides by the unary string sign. White space is
allowed around the sign, and at the end of the string.

'+ 2' + '- 2' == 0

This is of value when dealing with original data in string form
that needs to be converted. Without this it is especially difficult to
pass a negative value around in string form.
(maint) Remove redundant code