     
     //MARK: Helpers
     
+    /**
+    Given an object this method returns the type of update that this object will 
+    perform in the cache: .Move, .Update or .Insert
+    
+    :param: object Object to update
+    
+    :returns: Type of the update needed for the given object
+    */
     func updateType(object: T) -> RealmCacheUpdateType {
         let oldSectionOptional = sectionForOutdateObject(object)
         guard let oldSection = oldSectionOptional else { return .Insert }

    func didDelete<T: Object>(object: T, indexPath: NSIndexPath)
}


class RealmResultsCache<T: Object> {
    var request: RealmRequest<T>
    var sectionKeyPath: String? = ""

        return keyPathValue
    }
    
    /**
    Sort an array of objects (mirrors of the original realm objects)
    Using the SortDescriptors of the RealmRequest of the RRC.
    
    :param: mirrors Objects to sort
    
    :returns: sorted Array<T>
    */
    private func sortedMirrors(mirrors: [T]) -> [T] {
        let mutArray = NSMutableArray(array: mirrors)
        let sorts = request.sortDescriptors.map(toNSSortDescriptor)
