(PUP-1404) execpipe resets LANG and LC_ALL

Puppet::Util::Execution.execpipe always run commands with LANG="C" and
LC_ALL="C" to avoid localized output.
(PUP-1404) Add tests for execpipe locale setting
(PUP-1404) Merge execpipe locale settings (#2234).

This merges in the changes to execpipe to reset LANG and LC_ALL to C in
order to get default program output, and tests for the changes.
(pup-1369) Add package_settings property for package

This changeset adds the package_settings property to "package" type. It's
intended to be used mainly with FreeBSD ports to control port options on
installed packages (the options normally set with make config).

The sole implementation of package_settings is delegated to providers. This
changeset only introduces package_settings feature and property to package
type (this initially defines an interface between package type and
provider used to handle package_settings).
(PUP-1404) LC_ALL test to actually tests LC_ALL
Merge pull request #2264 from kylog/issue/pup-1369/add-package-settings-property

(pup-1369) Add package_settings property for package
Don't run LANG/LC_ALL tests on windows
(PUP-1404) Don't swallow execpipe tests on windows