def extracted_files
      @extracted_files ||= begin
        base_path = File.dirname(path)
        filename = File.basename(path)
        Dir.chdir(base_path) do
          %x[#{ utility(:tar) } -xf #{ filename } 2>/dev/null]
        end
        Hash[
          contents.keys.map {|manifest_path|
            path = File.join(base_path, manifest_path.sub(/^\//, ''))
            if path =~ /\.tar.*$/
              [manifest_path, self.class.new(path)]
            else
              [manifest_path, path]
            end
          }
        ]
      end
    end
def extracted_files
      @extracted_files ||= begin
        base_path = File.dirname(path)
        filename = File.basename(path)
        Dir.chdir(base_path) do
          %x[#{ utility(:tar) } -xf #{ filename } 2>/dev/null]
        end
        Hash[
          contents.keys.map {|manifest_path|
            path = File.join(base_path, manifest_path.sub(/^\//, ''))
            if path =~ /\.tar.*$/
              [manifest_path, self.class.new(path)]
            else
              [manifest_path, path]
            end
          }
        ]
      end
    end
Return a Hash with the paths from #contents mapped to either another
 TarFile object (for tar files) or the full path to the extracted file.