Refactoring: use delegation instead of subclassing
Refactoring: remove warning
Refactoring: move AbstractScopeAdapter to scope package
Refactoring: reuse method, remove warnings, don't process descriptors substituted to null twice
Refactoring: remove warnings
Centralize and cache creating import directives
Store alias name with import path
Test for ImportPath and JetImportDirective coherence
Debug names for chained scopes in lazy resolve
Create enumeration LookupMode instead of using boolean onlyClasses
Create scope with lazy import resolve
Add test for checking ambiguity for root package and the same package
Tests added for checking two-phase (classes and functions) import resolution
KT-3165 Weird stack overflow in IDE (test added)
Test are imported functions completed
JetPsiBuilder -> JetImportsFactory rename
Imports resolution tests
Fix NPE in JetPsiUtil (EA-43298)
Make the exception message in JvmClassName helpful
Fix codegen of do-while condition

The condition of a do-while loop can use variables declared in the loop
(variables can only be declared inside a block). Previously this behaviour
caused crash because after the block was generated, all variables declared
inside that block were gone from myFrameMap

 #KT-3280 Fixed