JavaDescriptorFinder#getClassNames() returns empty list

All classes are included in JavaPackageFragmentScopeForJavaPackageFragment  anyway
Deserializer: use module to search for dependencies in TypeDeserializer
Resolve classes in Deserialization locally

Temporary hacky solution
Fix DeserializerForDecompiler: create package fragment provider for missing dependencies
Use module to resolve annotation classes in AnnotationDescriptorLoader
Drop DependencyClassByQualifiedNameResolver and implementation
Drop DescriptorFinder.EMPTY
Refactor: Extract deserialize class to context
Move caching of deserialized classes to new component ClassDeserializer

Drop AbstractDescriptorFinder
Refactor: DescriptorFinder -> ClassDataFinder

Deserialization subsystem only need to know about the way to obtain class data, it can construct descriptors itself (no need to call DeserializedClassDescriptor constructor from other modules)
Drop ClassDataFinder#getClassNames()
Remove hack in JavaClassDataFinder
Avoid recomputing ClassData in DeserializedDescriptorResolver
Rename: DescriptorDeserializersStorage -> DescriptorLoadersStorage
DebuggerUtils#findSourceFileForClass() doesn't use JetFilesProvider
JetPositionManager#prepareTypeMapper() does not use JetFilesProvider
Drop JetFilesProvider#allPackageFiles() and sampleToAllFilesInModule()
Do not use JetFilesProvider in PositionManagerTestCase
Simplify KotlinCacheService#isFileInScope()
Change AnalyzerFacade#createSetup to accept a list of synthetic files and a scope for physical source files

Make DeclarationProviderFactory a project service