Annotation classes @ReadOnly and @Mutable added to runtime (to get into the standard library)
Collections in interfaces marked @ReadOnly
Use wrapping instead of copying when creating nullable/non-null types

 Why wrapping is better:
1. It's requires less memory: a copy has many fields, while a wrapper has only one
2. It preserves laziness of types
Cache files in the provider

This is required when, for example, very many exceptions are thrown in tests, and the console goes crazy calling JetExceptionFilter
Chaching results of findClasses in JavaElementFinder

Quieries to this method appear very high in the profile when there are many exceptions in the console
Suppress warnings when compiling runtime for tests