   # inheritence hierarchy.
   bestMatchingShell: (link) ->
     # obtain set of matching shells
-    matchingShells = LinkShell.matchingShells(link)
+    matchingShells = LinkShell.matchingShells link
 
     # reduce function to get the most specific shell (in terms of inheritance)
     reduceFn = (bestShell, shell) ->

        return bestShell
      else return shell

    _.reduce(matchingShells, reduceFn, LinkShell)


# select functions above, attached to acorn namespace

      return LinkShell

    # parse link into a location object
    location = acorn.util.parseUrl link

    # filter out shell modules that don't derive from LinkShell
    shells = _.filter acorn.shells, (shell) ->
