         return nil
     }
 
-    func set(tag: String?, value: Any, cost: Int) {
+    func set(tag: String?, object: Any, cost: Int) {
         let tag = tag ?? ""
         if let r = self.tags[tag] {
             self.cost -= r.cost
         }
-        self.tags[tag] = (value, cost)
+        self.tags[tag] = (object, cost)
         self.cost += cost
     }
     

    public func fetch(url: String, tag: String? = nil, options: [String: Any]? = nil, expired: WebCacheExpiration = .Default, progress: NSProgress? = nil, completion: (OBJECT?) -> Void) {
        dispatch_async(self.queue) {
            if let entry = self.cache.objectForKey(url) as? WebObjectEntry {
                let object = entry.get(tag)
                completion(object as? OBJECT)
                return
            }
        
            let receiver = WebCacheDataReceiver(url: url) {

        dispatch_async(self.queue) {
            let cost = self.evaluate(object)
            if let entry = self.cache.objectForKey(url) as? WebObjectEntry {
                entry.set(tag, object: object, cost: cost)
                self.cache.setObject(entry, forKey: url, cost: entry.cost)
            } else {
                let entry = WebObjectEntry(tag: tag, object: object, cost: cost)
                self.cache.setObject(entry, forKey: url, cost: entry.cost)
            }
        }
