Translate "Safe Delete" usage info classes to Kotlin
Improvements in element description provider (proper treatment of light classes/methods, support of simple vs qualified names)
Reuse Java safe delete for non-local functions in Kotlin
Reuse Java safe delete for Kotlin classes and objects
Forbid "safe delete" for anonymous objects
Fix warnings
Reuse Java safe delete for non-local Kotlin properties
Add utility functions for conversion to light elements
Refactoring: Extract methods
Generate light type parameters for Kotlin light methods
Reuse Java safe delete for type parameters in Kotlin declarations (aside of usages in Kotlin files)
Extract base interface for Kotlin light elements
Use light element origin instead of getNavigationElement()
Search property declaration together with its accessor(s)
Refactoring: Extract method
Make light parameters compatible with KotlinLightElement
Reuse Java safe delete for  parameters in Kotlin declarations
Add Safe Delete tests for extension functions and properties
Forbid safe delete action if target element is a property setter parameter
Generate constructor light methods with origin set to Kotlin class/object declaration