JS backend: make intrinsic array factory methods.

#KT-2511 fixed

(cherry picked from commit 31843c5)
JS backend: fixed intrinsic of the typed array factory methods(intArray etc).
JS backend: improve js readability which generated in the Dangerous translator -- initialize temporary vars in declaration.

(cherry picked from commit 4d8355c)
JS backend: added reviver parameter to JSON.parse.
Fixed code style in json.kt.

(cherry picked from commit b3bf97c)
JS backend: performance optimization for CompositeFIF  -- we don't need hash map.

(cherry picked from commit 7b29a01)
JS backend: make MutableMap.set as function intrinsic.
Fixed test WebDemoExamples2Test#builder.
JS backend: cleanup code.
Drop Kotlin.toString and jet.sure.
JS backend: fixed String.split for the case when using regexp.
Added(overload) String.split with limit parameter.
JS backend: descriptor parameter of DescriptorPredicate#apply marked as @NotNull.
JS backend: translate invoke function as intrinsic.
JS backend: made as intrinsic map accessing methods and fixed accessing to native map.
JS backend: cleanup strings code.
Added String.size and String.length().
JS backend: added String.isEmpty

(cherry picked from commit 6cf1761)
JS backend: don't bind this if it is not need -- skip methods defined in class, for example Int::plus

(cherry picked from commit e2334f7)
JS backend: refactoring the code for using special implementation of Map/Set for primitives (Int, String etc.) -- made it intrinsic.
Properly implementation for KT-2026.

(cherry picked from commit 6335bc4)
JS backend: fixed codestyle for TopLevelFIF.java.

(cherry picked from commit 6335bc4)
JS backend: refactoring
- add KotlinFunctionIntrinsic;
- remove CallStandardMethodIntrinsic
- rename TranslationUtils#generateCallArgumentList to TranslationUtils#generateInvocationArguments;
- add to PatternBuilder#pattern with root(prefix) parameter.
JS backend: move common code to CompositeFIF.
JS backend: added Kotlin.toString, Kotlin.arrayToString, Kotlin.arrayEquals and shim for Array.isArray to kotlin_lib.
Now jet.String will be translated to Kotlin.toString.
JS backend: made some exceptions more JS idiomatic -- translate Exception to Error, IndexOutOfBounds and IndexOutOfBoundsException to RangeError.