(maint) Fix plugin spec to work with facter 1.7.5

Puppet does not consider Facter 1.7.5 to provide external_facts, so the
pluginfacts step was being skipped when specs were run with Facter
1.7.5. Altered the plugin spec to work with the application rather than
the face so that we can check the rendered output, and to generate lib
and facts.d dirs to normalize the output (otherwise the downloader
reports the creation of the base plugin target directories, something
which normally would be handled by Puppet's Settings catalog).

As part of this, I noticed that the plugin face would return different
results. If external facts were supported, it would return the list of
any external facts pluginsynced. Otherwise it would return the list of
any plugins pluginsynced. Changed this to accumlate and list both sets
of changes.
Merge pull request #2593 from jpartlow/maint/master/plugin-spec-for-facter-1.7.5

(maint) Fix plugin spec to work with facter 1.7.5