(PUP-2733) Refactor the Binder's use of Puppetx

There were issues with how the binder used the puppetx namespace. This moves all constructs used in the binder from the Puppetx namespace to Puppet::Plugins (where plugins are defined). Plugins provided by others can (just as before) be placed in any suitable namespace (such as Puppetx).

Some additional changes are expected once pops is the default in 4.0.0 (now since pops/binder is optional, there are a couple of hoops to jump through wrt initialization and require).