     var managedObjectModel: NSManagedObjectModel! { get set }
     var databaseFilePath: URL? { get }
     func performUsingWorker(closure: ((NSManagedObjectContext) -> ()))
+    var identifier: String { get }
 }
 
 @available(iOS 10, *)

        return container.viewContext
    }
    fileprivate var managedObjectModel: NSManagedObjectModel!
    
    private var workerCount = 0
    

    }

    public func performInBackground(tasks: [ContextClosure], completion: (() -> ())? = nil) {
        Logging.log("Perform \(tasks.count) tasks on \(stack.identifier)")
        if let task = tasks.first {
            stack.performUsingWorker() {
                context in
