 
         defaultEntityCacheWorkQueue.async
             {
-            if let entity = self.cacheLookup(using: stagesAndEntries)
+            if let entity = Pipeline.cacheLookup(using: stagesAndEntries)
                 {
                 DispatchQueue.main.async
                     { onHit(entity) }

        }

    // Runs on a background queue
    private func processAndCache<StagesAndEntries: Collection>(
            _ rawResponse: Response,
            using stagesAndEntries: StagesAndEntries)
        -> Response

        }

    // Runs on a background queue
    private static func cacheLookup(using stagesAndEntries: [StageAndEntry]) -> Entity<Any>?
        {
        for (index, (_, cacheEntry)) in stagesAndEntries.enumerated().reversed()
            {
