Add environment options

This pull request adds optional support for configuring Puppet master with the new "Directory Environments" method introduced in Puppet 3.5

The default is still to use the old 'config' method so it is backwardly comptable - since Puppet themselves aren't making this the default until at least 4.0 it made sense to do it this way