     else
       false
 
+  # Public: Asynchronously checks that the given path exists and is a directory.
   isDirectory: (directoryPath, done) ->
     return done(false) unless directoryPath?.length > 0
     fs.exists directoryPath, (exists) ->

    else
      false

  # Returns true if the specified path is executable.
  isExecutableSync: (pathToCheck) ->
    return false unless pathToCheck?.length > 0
    if stat = fs.statSyncNoException(pathToCheck)

        paths = paths.map (childPath) -> path.join(rootPath, childPath)
        done(null, paths)

  # Private: Returns only the paths which end with one of the given extensions.
  filterExtensions: (paths, extensions) ->
    extensions = extensions.map (ext) ->
      if ext is ''
