IDEA-104500 Gradle: Allow to reuse common logic for other external systems

Don't override user-local cached project info in case when a single ide project is backed by multiple external projects
IDEA-104500 Gradle: Allow to reuse common logic for other external systems

More convenient toString()
notnull
moved to analysis
moved to analysis
moved to analysis
moved to java-psi
moved to analysis
moved to analysis
moved to analysis
moved to analysis
moved to analysis
moved to analysis
moved to analysis
notnull
IDEA-107943 Dependencies with a non-default type not added as external libraries in maven module
fixed: allow "maven-plugin" in dependency type. +review CR-IC @Anton.Makeev