             dict[NSUnderlyingErrorKey] = error as NSError
             let wrappedError = NSError(domain: "YOUR_ERROR_DOMAIN", code: 9999, userInfo: dict)
             Logging.log("Unresolved error \(wrappedError), \(wrappedError.userInfo)")
+        }
+        
+        if abortOnFailure {
             abort()
         }
         
-        return coordinator
-    }()
+        return false
+    }
     
     public func saveContext () {
         saveContext(nil)

    
    lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator = {
        let coordinator = NSPersistentStoreCoordinator(managedObjectModel: self.managedObjectModel)
        let url = self.applicationDocumentsDirectory.URLByAppendingPathComponent("SingleViewCoreData.sqlite")
        var failureReason = "There was an error creating or loading the application's saved data."
        do {
            try coordinator.addPersistentStoreWithType(NSSQLiteStoreType, configuration: nil, URL: url, options: nil)
        } catch {
            // Report any error we got.
            var dict = [String: AnyObject]()
            dict[NSLocalizedDescriptionKey] = "Failed to initialize the application's saved data"
            dict[NSLocalizedFailureReasonErrorKey] = failureReason

import CoreData

public class ObjectModel {
    struct StackConfig {
        var storeType: String!
        var storeURL: NSURL!
        var options: [NSObject: AnyObject]?
    }

    private var modelName: String!
    private var storeType: String!
    private var writingContext: NSManagedObjectContext?
    public var wipeDatabaseOnConflict = false
    
    public init() {
        fatalError("Use some other init method instead")
