Bug Fix: KT-4613

Fix replace with infix function intention to be inapplicable in the
case of package function calls, such as “kotlin.io.println(“”).”
Temporarily revert changes that create separate class descriptors for each PSI class
Replace "InvalidArgumentException" with "IllegalArgumentException"
KT-4982 this$0 is not initialized in the anonymous object

   #KT-4982 Fixed
Anonymous object transformation
Distinguish captured field from general one
Support anonymous object constructor transformation and inline
Diagnostic: support anonymous objects in inline functions
Rename LambdaTransformert to AnonymousObjectTransformer
Inline context refactoring & proper generation of outer class info
Object transformation: store captured field before super constructor call
Gradle plugin: add compatibility with android-gradle-plugin 0.10.+
 #KT-4984 Fixed
Don't check trailing spaces because idea removes them by default
Run formatter in function context for converted expression and statements
Rewrite tests for formatting during typing with auto generator
Indent for ?. calls (KT-3913)

 #KT-3913 Fixed
Refactoring: class rename with minor code enhancements
Fix formatting for multiline binary expressions

 #KT-4797 Fixed
Add spaces around elvis operator
Fix 'Formatter doesn't remove redundant spaces between modifiers, name, and opening brace'

 #KT-3370 Fixed