Hide special IDEA scopes created to map a dependency to more scopes.
REVIEW-4420: Ensure imported pom/ivy artifacts have the correct type
Merge branch 'release' into master
Post-merge fixes
Renamed ModuleVersionRepository.getComponentMetaData() -> resolveComponentMetaData()
first (rough) cut of supporting ivy extra attributes in component metadata rules
Release notes foreword.
Changed ConcurrentSpec so any thread other than the main test thread can define instants, rather than just those threads launched by ConcurrentSpec.executor.
Reworked DefaultExecutorFactory unit tests to use ConcurrentSpec, so they should be more reliable now.
Don't pad the lock file with 0s on close if it is shorter than expected.
Call to flush() was in the wrong spot (but not really required anyway).
Changes after REVIEW-4583.
Introduced a ModuleVersionMetaData specifically for Maven. In the next step we should probably create its dedicated caching infrastructure as well.
Make sure we are dealing with a MavenModuleVersionMetaData. If the object is of a different type, translate it. This is the case for client module dependencies.
Renamed local version of getComponentMetaData as well
REVIEW-4324: Start to model split of local and remote access to module version repositories

- Added ModuleComponentRepository that provide local and remote access via
  ModuleComponentRepositoryAccess. This currently wraps LocalAwareModuleVersionRepository
  but will eventually replace it
- Use ModuleComponentRepository in RepositoryChain resolvers
Pushed ModuleComponentRepository (and *Access) further into repository chain

- Changed CachingModuleVersionRepository to CachingModuleComponentRepository
- Changed LocalModuleVersionRepository to LocalFilesystemModuleComponentRepository
Move resolveModuleArtifacts onto ModuleComponentRepositoryAccess

- This will allow us to get rid of LocalArtifactsModuleVersionRepository, I think
Pushed ModuleComponentRepository further down the stack
Pushed ModuleComponentRepository right to the bottom of the repository stack

- Replaces ModuleVersionRepository, LocalAwareModuleVersionRepository and LocalArtifactsModuleVersionRepository
- ExternalResourceResolver needs some cleanup following this change