Tests for some more cases of JVM signature clashes
IDEA plugin: fixed crashing ifExpressionToElvis intention when applying to if expression which is part of another expression.

#EA-57307 fixed
JS backend: added expected receiver type for intrinsics.
JS backend:  added entrySet to HashMap implementations and fixed iteration over maps.
JS stdlib: added LinkedHashMap abd LinkedHashSet.
JS stdlib: added test for using special names(i.e. Object.prototype members) in Maps and Sets. Fixed the support special names in PrimitiveHashMap.
LOG.error() instead of exception for "Rewrite at slice" errors
Minor: improve assertion message in SpecifyTypeExplicitlyFix
Refactoring: extracted 'reportUnreachableCode'
Rename: getAllInstructions -> getInstructionsIncludingDeadCode
Added this method to 'Pseudocode' interface instead of 'getDeadInstructions',
added 'isDead' to 'Instruction' interface
Highlight all text ranges for diagnostics in tests
Mark some expressions after processing their components
 when it's semantically correct

Expressions: calls, 'for' loops, elvis operators
It's significant for reporting 'unreachable code' correctly
Evaluate default value for argument non-deterministically
 in pseudocode
Mark only unreachable parts of element if it has reachable parts
 like for 'return todo()' mark only 'return'
KT-2334 An error 'local function without body' is not reported
 #KT-2334 Fixed
KT-5155 Auto-casts do not work with when
 #KT-5155 Fixed
KT-5200 Mark unreachable code in lambdas
 #KT-5200 Fixed
Extracted 'generateBooleanOperation'
Generate magic instruction for '&&, ||' in condition as well
Removed CFPContext
 flag 'inCondition' became unused
Compute pseudo value for parameter correctly:
 do not throw away pseudo value for default value