     /** The managed object model */
     public let managedObjectModel: NSManagedObjectModel
     
-    // TODO: Fix lazy initializers
     /** Resource path strings mapped to entity descriptions. */
-    //public lazy var entitiesByResourcePath: [String: NSEntityDescription] = initEntitiesByResourcePath();
+    public lazy var entitiesByResourcePath: [String: NSEntityDescription] = self.initEntitiesByResourcePath();
     
     // MARK: Private Properties
     
     /** The underlying HTTP server. */
-    private let httpServer: HTTPServer = HTTPServer();
+    private lazy var httpServer: HTTPServer = self.initHTTPServer();
     
     // MARK: Initialization
     

        return entitiesByResourcePathDictionary
    }
    
    // MARK: Server Control
    public func start(onPort port: UInt) -> NSError? {
        
        
    }
    
    public func stop() {
        
        
    }
    
    // MARK: Request Handlers
    private func responseForRequest(forRequest request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
        
        func responseForSearchRequest(request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
            
            
        }
        
        func responseForCreateRequest(request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
            
            
        }
        
        func responseForGetRequest(request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
            
            
        }
        
        func responseForEditSearchRequest(request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
            
            
        }
        
        func responseForDeleteRequest(request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
            
            
        }
        
        func responseForFunctionRequest(request: ServerRequest) -> (ServerResponse, [String: AnyObject]) {
            
            
        }
        
    }
    
    // MARK: Private Classes
    
    
}

    func server(Server, statusCodeForRequest request: ServerRequest, managedObject: NSManagedObject?) -> ServerPermission
    
    func server(Server, didPerformRequest request: ServerRequest, withResponse response: ServerResponse, userInfo: [ServerUserInfoKey: AnyObject])
}

// MARK: Enumerations
