Add intention for replacing explicit function literal parameter with 'it'

Kotlin's function literals have a shortcut for one-argument literals:
the single argument doesn't need to be explicitly named, but can be
referred via the 'it' contextual keyword.

For example, 'array(1, 2, 3).filter { x -> x % 2 == 0 }'
          -> 'array(1, 2, 3).filter { it % 2 == 0 }'

Add an intention action for this transformation.
Add intention for converting an implicit 'it' parameter to an explicitly named parameter

Kotlin's function literals have a shortcut for one-argument literals:
the single argument doesn't need to be explicitly named, but can be
referred via the 'it' contextual keyword. Add an intention action for
converting an implicit 'it' parameter to an explicitly named one.

For example, 'array(1, 2, 3).filter { it % 2 == 0 }'
          -> 'array(1, 2, 3).filter { x -> x % 2 == 0 }'
Assert with framework statements

Should work even if -ea is not enabled
Don't generated redundant class files
Add JetMultiDeclarationReference

A reference to component* functions
Rewrite optimize imports using JetReference#resolveToDescriptors

 #KT-4451 Fixed
Move, rewrite and rename JetImportOptimizer

Rewrite it to Kotlin and rename to KotlinImportOptimizer, move to imports package
Create ImportsUtils.kt
Optimize Imports tests: Switch to generated approach

Move test and rename test data
Delete unused testdata
Rewrite OptimizeImportOnFlyTest
Optimize Imports: do not keep imports of unimportable entities
Optimize Imports: simplify code
Update to IDEA 134.1445 EAP
Optimize Imports tests: add test for qualified expression with nested enum
Configuration for Android Studio debug created
KT-4562 New Intention: Add and Remove braces from control statements that have single line bodies
Move DebugProtoBuf to module "compiler-tests"

To help debug serialization-related code in compiler tests
Minor fix in tests for sources appearing in libraries
Minor, add toString() to OutputFile for debugging
Write KotlinSyntheticClass to generated classes for functions

That is SAM wrappers, callable reference wrappers, local functions and
anonymous functions
Write KotlinSyntheticClass to anonymous and local classes
Add tests that there's no PSI for all kinds of synthetic classes