(maint) Backport benchmarking from 3.5 to 3.4.2

This backports the bechmarking from Puppet "3.5.0" (i.e. master)
to 3.4.2 and modifies the many_modules benchmark to not use lookup
to get the "benchmarking" environment.
(maint) Make benchmark:defined_types work on 3.4.2

This changes the use of lookup to creating an Environment.
(maint) Set required conf parameters to make benchmarks do something

The backport did not consider that environments needed to be configured
differently than for the new env support in 3.5.
Merge pull request #2356 from hlindberg/maint_add-benchmarking-to-stable

(PUP-751) Add benchmarking to stable