Fix for KT-3684: IllegalAccess on a private property of the outer class

 #KT-3684 Fixed
Fix for KT-3546: Exception when delegating to ArrayList

 #KT-3546 Fixed
Tests for not reproduced KT-1770, KT-3001 and KT-3414

 #KT-3414 Can't Reproduced
 #KT-3001 Can't Reproduced
 #KT-1770 Can't Reproduced
Extract setting configurator to utility class
Add folding doc and multiline comments
Partial fix for KT-3698: properly write field initializer
changed local extensions priority

local extensions aren't longer chosen before members
KT-3563 Compiler requiring java.io.File, and it's unclear why
 #KT-3563 fixed
refactoring
  extracted methods
report UNRESOLVED_REFERENCE_WRONG_RECEIVER
 mentioning candidates with wrong receiver
added ThrowingScope
fixed npe in comparing results
refactoring
 extracted checkReceiverTypeError method to avoid 'checkOnlyReceiverTypeError' boolean flag
Lazy analyze in counting parameters tips
Fix color for highlighting resolved method
Refactorings in counting parameters tips
Minor, prevent infinite loops in range tests
Fix loop over a range literal up to MAX_VALUE

 #KT-492 In Progress

For Byte, Char and Short explicit casting from Int is removed -- loop parameter
is already stored in an Int anyway. For Int and Long comparison "i < end" at
the beginning of the loop is replaced to "i != end" at the end of the loop + a
special check for an empty loop
Fix loops over progressions near to MAX_VALUE/MIN_VALUE

 #KT-492 Fixed

For Byte, Char and Short ranges, promote the type of the loop parameter to int
to avoid overflows. For Int and Long ranges at the end of the loop over a
progression we now check if the new (incremented) value of the loop parameter
is greater than the old value iff increment > 0
Minor, cut down unnecessary 'load' in for-progression codegen