Do not optimize large methods. #KT-5513 Fixed
Fixed KT-4814: check type when a += b is a = a+b
In cases when a += b is a = a + b, check that (a+b) can be safely casted to a
Assignment operations test fix:
type infered for these vals are MutableIterator, but there is no plus (returning MutableIterator)
nor plusAssign operator for them, so I casted them explicitly to Iterator
Assignment operations test fix:
these methods used in expressions like a = a + b, so they need to return
NotNull when receiver is NotNull
Assignment operations test fix:
x is a byte, x += 2 translated to x = x+2, but type of (x+2) currently
is Int, so it's not compiled because Int can't be stored in Byte.

Maybe we need to think about what should be a result of sum of to
Bytes, but currently it's still Int
+= tests fix
Merge pull request #502 from bintree/master

#KT-5513 Fixed
Update to 138.1283.4 EAP
Temp workaround for dependency in FileManagerImpl to Registry properties

Should be reverted after new EAP
JS backend: add support for reflection types
JS backend: support for reflection
JS backend: tests for reflection support