Add support for options 'ssldir' and 'puppetdir'

This is useful if the puppetmaster configuration and/or ssl directory was
installed in non-standard locations.
Use Puppet agent variables to avoid duplication
Get puppet parameters from theforman/puppet-puppet module
Add testing infrastructure