     public var initialDownloadOperation: DownloadJSONOperation
     public var pollingDownloadOperation: P
     public var parsedJSON: T?
+    public var completionHandler: (T -> Void)?
+    public var errorHandler: (NSError -> Void)?
     
     // MARK: - Public Initialisers
     public init(

public protocol Clonable {
    func clone() -> Self?
}

public class DownloadJSONByPollingOperation<T: Pollable, P: DownloadJSONOperation where P: Clonable>: GroupOperation {
    // MARK: - Private Properties
    private var hasProducedAlert = false
    private var pollToURL: NSURL?
    private var pollState: PollStatusProtocol
    public var __completion: (T -> Void)?
    // WARNING: __completion and _error are ugly
    public var __error: (NSError -> Void)?
    private var model: T?
    
    

        error: (NSError -> Void)? = nil,
        initialPollState: PollStatusProtocol
        ) {
            completionHandler = completion
            errorHandler = error
            pollState = initialPollState
            initialDownloadOperation = initialDownload
            pollingDownloadOperation = pollOperation
