Use ModuleVersionMetaData internally in ExternalResourceResolver

- MetaDataParser now returns a ModuleVersionMetaData instead of ModuleDescriptor
- ModuleVersionMetaData is now available for version matching
Further refactoring of ExternalResourceResolver for simplification