 
     private func _toCache(URL: NSURL, image: UIImage?) {
         if let image = image {
-            delegate.cache[URL] = image
+            delegate?.cache[URL] = image
         }
     }
 

                failure(URL, error: error)
                return
            }
            dispatch_async(delegate.decompressingQueue) {
                self.success(URL, data: self.receivedData)
            }
        }
    }

*/
public class Loader {

    weak var delegate: Manager?
    let task: NSURLSessionDataTask
    var receivedData = NSMutableData()
    internal var blocks: [Block] = []
