Allow to find usages of Java class via references to its constructor  #KT-4521 Fixed
Add assertion message
Support find usages for declarations with multiple overridden Java methods (e.g. J -> J -> K)
JS backend: fixed smartcast when a call have implicit this or receiver.
Refactor JDR: minor, extract class
Minor: use orEmpty() instead of ?: listOf() in LazyJavaPackageFragmentProvider
Refactor JDR: create LazyJavaPackageFragmentProvider in injector
Refactor JDR: use JavaResolverCache in LazyJavaPackageFragmentProvider directly

Remove LazyJavaClassResolverWithCache
This actually can affect behaviour because JavaResolverCache has slightly different logic (uses CLASS key in BindingContext as opposed to FQNAME_TO_CLASS_DESCRIPTOR)
Refactor JDR: minor extract function in LazyJavaPackageFragmentProvider
Refactor JDR: remove some of the usages of JavaDescriptorResolver class
Refactor JDR: add explicit binding between java classes and packages for their statics

Get rid of Kind in JavaPackageFragmentDescriptor and create subclass which exposes additional function
Add method in JavaClassDescriptor to get correponding package fragment
Remove JavaDescriptorResolver from context
Remove PackageFragmentDescriptor#getProvider method

PackageFragmentProvider should be hidden from the client of PackageFramentDescriptor
Add validation for binding between java classes and corresponding package fragments
AbstractInsertImportOnPasteTest: use test framework to create correct file structure for java files
JDR: do not create package fragment for class statics if class cannot be resolved

This keeps behaviour consistent in rare cases when JavaClass can be found but not resolved
As of now this can happen in IDE if we take PsiClass from index but file structure is wrong so we can't resolve the class
Add test which documents this case
Fixed dependency to kotlin runtime (dist version)
Do not normalize visibilities for fake overrides
 #KT-4525 Fixed
check incomplete equality
KT-4341 No resolved call for right-hand side of equals expression
 #KT-4341 Fixed
added renderers for constraint system and type bounds

moved classes