Merge pull request #2793 from nfagerlund/docs_disable_warnings

(PUP-2822) Improve description of disable_warnings setting
(PUP-2842) Limit platforms on which we install ruby-prof

The ruby-prof gem is not applicable on all platforms.  This
commit simply adds a :platform restriction to the Gemfile.
(PUP-2843) Fix INVALID_HANDLE_VALUE on Windows x64

 - Previous definition in Puppet::Util::Windows::File would work on x86
   but not x64.  Adjust the constant, and share the constant with
   Puppet::Util::Windows::Security.
(PUP-2654) Capitalize each segment of a resource type "label"

When a Resource type is stringified it selects the short notation
(e.g. Fee::Foo) over the longer (e.g. Resource[Fee::Foo]), and
when doing so it should output each segment of the FQN with a
capital letter. The current implementation only capitalizes
the initial letter (e.g. Fee::foo::fum).

This fixes the implementation of
TypeCalculator.string_PResourceExpression to capitalize all segments.
Merge pull request #2808 from cprice404/bug/master/PUP-2842-limit-platforms-for-ruby-prof

(PUP-2842) Limit platforms on which we install ruby-prof
(maint) Set Travis CI to run two spec runner processes.

Setting Travis CI to use two concurrent processes for running specs.
This should hopefully speed up running specs for pull request CI.
(PUP-2521) Don't use windows-pr constants

 - Somehow there were still some remaining constants referencing
   Windows:: which is part of windows-pr gem.  Most are already
   defined locally as of the code being ported to FFI.  Ensure that we
   use our internal constant definitions rather than those from gem:

    Puppet::Util::Windows::AccessControlEntry::CONTAINER_INHERIT_ACE
    Puppet::Util::Windows::AccessControlEntry::OBJECT_INHERIT_ACE
    Puppet::Util::Windows::AccessControlEntry::INHERIT_ONLY_ACE

    Puppet::Util::Windows::File::STANDARD_RIGHTS_ALL
    Puppet::Util::Windows::File::SPECIFIC_RIGHTS_ALL
    Puppet::Util::Windows::File::FILE_ALL_ACCESS
    Puppet::Util::Windows::File::FILE_GENERIC_READ
    Puppet::Util::Windows::File::FILE_GENERIC_EXECUTE

 - Add new constants to Puppet::Util::Windows::Error
    ERROR_FILE_NOT_FOUND
    ERROR_ACCESS_DENIED
(PUP-2521) Define Process constants locally

 - Previously, Process constants were used in a few locations throughout
   the code.  Capture the needed PRIORITY_CLASS constants in our local
   Windows Process class, and also define CREATE_NEW_CONSOLE.  These
   constants have moved in new versions of the win32-process gem.
 - Note that ext/windows/service/daemon.rb doesn't load Puppet code.
   The daemon only loads what it explicitly needs, so ensure the
   CREATE_NEW_CONSOLE constant is defined there.
(PUP-2521) Remove windows-pr mixins from daemon

 - synchronize and handle appear to no longer be used
Merge pull request #2812 from peterhuene/maint/travis

(maint) Set Travis CI to run two spec runner processes.
Merge pull request #2809 from Iristyle/ticket/master/PUP-2843-Verify-Win32-constants

(PUP-2843) Fix constants on Windows x64
(PUP-2682) Allow trailing comma after node matches

This adds the ability to have a trailing comma after the last
match in a node expression.
Merge pull request #2694 from Iristyle/maint/master/PUP-2382-remove-Win32-require

(PUP-2382) Remove uneeded 'win32/api' require
Merge pull request #2761 from roidelapluie/PUP-1100-fix

 (PUP-1100) Fix error message with create_resource and auto-loaded class
Merge branch 'pr/2699'

* pr/2699:
  (PUP-2682) Allow trailing comma after node matches
Merge pull request #2813 from Iristyle/ticket/master/PUP-2521-remove-windows-pr-gem

(PUP-2521) - Remove windows-pr gem - phase 1
Merge pull request #2750 from hlindberg/PUP-1852_deprecate-search-function

(PUP-1852) Deprecate the 'search' function.
Merge remote-tracking branch 'upstream/master' into puppet-4

* upstream/master: (88 commits)
  (PUP-2682) Allow trailing comma after node matches
  (PUP-2521) Remove windows-pr mixins from daemon
  (PUP-2521) Define Process constants locally
  (PUP-2521) Don't use windows-pr constants
  (maint) Set Travis CI to run two spec runner processes.
  (PUP-2843) Fix INVALID_HANDLE_VALUE on Windows x64
  (PUP-2842) Limit platforms on which we install ruby-prof
  (PUP-2382) Remove 'win32/api' requires
  (PUP-2828) Select the branch of puppet-win32-ruby to install
  Revert "Merge branch 'pr/2801'"
  (maint) Use an absolute path so we're not sensitive to pwd
  (PUP-2828) puppet-win32-ruby acceptance ver config
  (maint) use compiler in crontab integration spec
  (PUP-2828) Pin to 1.9.3 branch of vendored ruby on Windows
  (maint) Make loaded 4x functions debuggable
  (MAINT) Small openbsd package spec tweaks
  (maint) Disable timesyncing for acceptance tests
  (maint) Eliminate duplicate constant warning
  (PUP-1283) win32-security gem raises a different exception
  (PUP-2750) Fix aggregate profiler spec tests on windows
  ...
Merge pull request #2751 from hlindberg/PUP-2741_remove-search-function-from-puppet-4

(PUP-2741) remove search function from puppet 4
Merge pull request #2781 from hlindberg/PUP-2798_Stop-reserved-word-warning-3x

(PUP-2798) Remove warnings for reserved words in 3x regular.