Fix #4039 - Puppet provisioner should support targeting a directory

Puppet is dropping support for the import statement. It is superseded
by the ability to use a directory in place of a site manifest file.

Since the puppet provisioner relies on `puppet apply` to do the work,
it is sufficient to allow a directory to be specified as the manifest
file, because puppet apply will use all manifest files found in said
directory.