Fixing EA-50643 - NPE: PropertyCodegen.generateBackingField

Do not return null as a method/field visitor
ScriptCodegen refactoring: unsingleton
NamespaceCodegen refactoring
Do done on classBuilder
StaticDelegationKind removed
Properly name packageFragments and packageFacade
ModuleChunks introduced
Class file factory remembers sources for each class
Each module carries its output directory
Refactoring: common logic extracted and moved to a util class
Do not report the output twice
Ability to direct output of different modules to different directories
Rename variable
Fix smoke test
Refactor OverrideImplementWithLibTest

Use JdkAndMockLibraryProjectDescriptor instead of a jar file, which needs to be
regenerated every time binary format changes
Refactor TopLevelMembersInvocationTest

Compile library dependencies in the test instead of storing them as jars in the
repository. Reuse MockLibraryUtil, move it from idea tests to compiler-tests
Refactor CompileKotlinAgainstBinariesCustomTest

Extract common logic, add NotNull annotations
Merge two tests with almost the same logic
Refactor CompileKotlinAgainstCustomBinariesTest

Each test now supplies its own classpath producer, which for now finds all jars
in the test data directory, but later will compile them using CLICompiler
Remove binary test data for some tests

Launch CLICompiler instead to compile it