         }
         
         var isDirectory = false
-        let isAbsolutePath = NSFileManager.defaultManager().fileExistsAtPath(path, isDirectory: &isDirectory)
-        return isAbsolutePath && isDirectory
+        let exists = NSFileManager.defaultManager().fileExistsAtPath(path, isDirectory: &isDirectory)
+        return exists && isDirectory
     }
     
     internal typealias _FileNamePredicate = String? -> Bool
     
-    internal func _getNamesAtURL(filePathURL: NSURL, prependWith: String, nameValidator: _FileNamePredicate, typeValidator: _FileNamePredicate) -> [String] {
+    internal func _getNamesAtURL(filePathURL: NSURL, prependWith: String, namePredicate: _FileNamePredicate, typePredicate: _FileNamePredicate) -> [String] {
         var result: [String] = []
         
         if let enumerator = NSFileManager.defaultManager().enumeratorAtURL(filePathURL, includingPropertiesForKeys: nil, options: .SkipsSubdirectoryDescendants, errorHandler: nil) {
             for item in enumerator.lazy.map({ $0 as! NSURL }) {
                 let itemName = item.lastPathComponent
                 
-                let matchByName = nameValidator(itemName)
-                let matchByExtension = typeValidator(item.pathExtension)
+                let matchByName = namePredicate(itemName)
+                let matchByExtension = typePredicate(item.pathExtension)
                 
                 if matchByName && matchByExtension {
                     if prependWith.isEmpty {

            return 0
        }

        var matches = _getNamesAtURL(urlWhereToSearch, prependWith: "", nameValidator: checkFileName, typeValidator: checkExtension)
        
        if matches.count == 1 {
            let theOnlyFoundItem = NSURL(fileURLWithPath: matches[0], relativeToURL: urlWhereToSearch)
            if theOnlyFoundItem.hasDirectoryPath {
                matches = _getNamesAtURL(theOnlyFoundItem, prependWith: matches[0], nameValidator: { _ in true }, typeValidator: checkExtension)
            }
        }
        

        
        let searchAllFilesInDirectory = _stringIsPathToDirectory(_storage)
        let namePrefix = searchAllFilesInDirectory ? nil : url.lastPathComponent
        let checkFileName = _getFileNamePredicate(namePrefix, caseSensetive: flag)
        let checkExtension = _getExtensionPredicate(filterTypes, caseSensetive: flag)
        
        guard let
            resolvedURL = url._resolveSymlinksInPath(excludeSystemDirs: false),
