REVIEW-4328: Note superfluous requests made when resolving dynamic version from multiple repositories
Removed redundant test
Refactoring ExternalResourceResolver
REVIEW-4551: Use IvyArtifactName + ModuleIdentifier to list available versions
Moved POM parsing logic into Maven resolver.
Removed an unused method.
Added a little more unit test coverage.
Upgraded to new version of native-platform, to pick up fixes for non-ascii file names under apple jvm.
Create less garbage when assembling the selectors.
Removed some debug logging.
Some tweaks to tooling api model implementations.
Added type param
Removed unused var
updated the ivy extra info story.
Some work on realignment of the plugins spec after recent intention changes.
Build tasks from selectors in the same order as when calling from command line.
REVIEW-4551: ResourcePattern.toModuleVersionPath now takes a ModuleComponentIdentifier as input
REVIEW-4551: Push ModuleComponentIdentifier into the module meta-data cache
REVIEW-4551: Renamed ModuleVersionRepository.getDependency() -> getComponentMetaData()
REVIEW-4408: Start to move the Artifact Query Result API closer to the ResolutionResult API

- Introduced generic result types for component-with-artifacts and artifact
    - Separate result types for resolved and unresolved artifacts
- Moved the general result classes to live with the ResolutionResult classes
- The JvmLibrary component implementations are constructed from the general types
    - Moved these into a separate 'jvm' subpackage. This is a temporary home.