Cache resources in caching classloader
This is especially important for looking up plugin descriptors
for missing plugins. For instance, in a build with 100 projects
which all call `plugins.withId('foo')`, the plugin descriptor for
the 'foo' plugin would be looked up 100 times, because each project
could potentially contain it. Every one of those lookups will usually hit
the same classloader (if all dependencies are defined in the root project).
Caching those lookups improves configuration time a lot in those cases.