Introduced RepositoryArtifactCache as start of replacement for Ivy's RepositoryCacheManager and inline AbstractDependencyResolverAdapter into its subclasses. These changes mean that ExternalResourceResolver doesn't need to implement DependencyResolver (it still does).
Use ModuleVersionSelector in the requested -> resolved cache, incremented the artifact cache layout version.