Escape surrogate characters
Generate copy() in data class even if constructor is empty or not present
Don't generate component function in lazy resolve for parameter if it has no val/var
Refactoring: create DataClassUtils and move all "component" function utils there
Don't try to search for component function if asked completely different function
Tests: extract base class
Debugger: get correct context for breakpoints inside lambdas
Minor: fix typo
Eval4j: fix coerce for arrays in return
#KT-5554 Fixed
Add test for KT-5554: coerce arrays in return
 #KT-5554 Fixed
Drop all inners classes if sorting is needed
Test that tests are executed only once in "All Tests"
Return tree structure in test view result for running single test
Minor, delete unused method in DataFlowInfo
Minor, remove duplicate method in ExpressionCodegen
Minor, fix some warnings in codegen
Fix initialization of object's INSTANCE$ field

Call object's constructor in <clinit> and ignore the result, but in the first
line of <init> save the current "this" to INSTANCE$

 #KT-4516 Fixed
 #KT-4543 Fixed
 #KT-5291 Fixed
 #KT-5523 Fixed
 #KT-5582 Fixed
Move properties of enum class object to the enum class

Similar to how it's done for usual classes
Assert that reference annotation argument is always an enum value

Rename JavaReferenceAnnotationArgument on that occasion to
JavaEnumValueAnnotationArgument. Also add a test on a nested enum annotation
argument
Rewrite JavaAnnotationArgument interfaces and implementations to Kotlin