big refactor - use resolve() + visitor for traversal methods (size, dependencies, dependants, evict, find)