Make use of Puppet Binder optional (and thus also rgen)

The Puppet Binder a.k.a "Data-in-Modules" is based on Rgen, and is
required to be able to use the data-in-module/hiera2 features.

The setting :binder must be set to true, or :parser set to 'future' for
the bindings system, data-in-modules, and hiera2 to be in effect.

The bindings system is now "booted" by the compiler on demand if the
settings dictate this. 

Implicit lookup of undefined class parameters will not use injector
unless active.

Explicit lookup using lookup will raise an error unless the bindings
system is active.

Tests toggle the activation