Dependency resolution refactor