PUP-1450 Honor source_permissions_ignore

 - In further debugging this failure, it was discovered that despite
   the :source_permissions parameter being set to :ignore on the file
   resource type, that we're still attempting to stat the source file
   and extract group / owner / mode.  So instead of trying to stat the
   file, catching errors, and falling back to defaults, we properly
   ignore the group / owner / mode of the source file and provide
   reasonable defaults on both Windows and Linux.
 - In Windows, the defaults continue to be
   :owner => 'S-1-5-32-544' (BuiltinAdministrators)
   :group => 'S-1-0-0' (Nobody)
   :mode => 0644
 - On other operating systems, the defaults are now set to be
   :owner => Process.euid
   :group => Process.egid
   :mode => 0644
 - Several tests were refactored to be less fragile with respect to the
   :source_permissions parameter