Minor, extracted generateLoopBody
Generate substatements as statements too

Preventing pushing on stack redundant Unit instances

 #KT-5667 fixed
Generate blocks-statements through CodegenStatementVisitor
Changed generating logic for named functions

Generate it as a sequence of statements when it's possible
Added automatic backup for debugging incremental compilation.
Fix: not loading ancestor packages from incremental cache.
Fixed opening file and not closing it.

This led to impossibility to delete file during incremental compilation.
Fixed clearing incremental cache for removed source files.

For writing system-dependent paths were used, for deleting were system-independent. That's why cache was not cleared on Windows.
Minor. Clarified "compiled file" as "file to compile".
Test for obsolete kt5307
Clean Dom and Dom tests.
Cleanup test helpers.
Cleanup Serializable test
Rename Serializable test file
Cleanup concurrent
JS backend: add long.js from closure-library
JS backend: add support for Long type
JS backend: tests for Long type support