clean up docs for new parser functions
(#20383) Provide location of duplicate resource in error

Commit ac83f85 cleaned up Puppet::Error and extracted file and line
presentation into a mixin. However the DuplicateResourceError exception
was relying on that behavior, and when the behavior was extracted the
location of the duplicate resource was lost.

This commit mixes in the ExternalFileError mixin and passes the file
line and number to the exception so that the duplicate resource location
can be displayed.

Thanks to Richard Clamp <richardc@unixbeard.net> for finding the
original error and providing the base for this fix.
Merge branch '20383-duplicate_resource_error_location' into stable
Merge pull request #1696 from Sharpie/21028-document-future-parser-functions

clean up docs for new parser functions (backport)
(maint) Fix Facter stubs in redhat service spec

The underlying OS was leaking into this test causing issues. This makes sure
operatingsystem is stubbed, and also corrects the casing on stubbed osfamily
values.
Merge branch 'stable'

* stable:
  (maint) Fix Facter stubs in redhat service spec
  (#20383) Provide location of duplicate resource in error
  clean up docs for new parser functions