JS inline: inline simple-return functions directly
JS inline: use inlined function name for inline labels
JS backend test: turn rhino optimization off for stdlib tests
JS backend: added the ability to turn off the inline optimization.
JS backend: removed JsBlock toString() truncation

Truncation complicates debugging.
Some inline tests depend on functions strings  comparison.
Code Review: FunctionInlineMutator

1. use renaming context in doReplaceReturn
2. rename doReplaceReturn -> doReplaceReturns
3. added Unit-return TODO
Code Review: use JsInliner.getFunctionContext
Code Review: added documentation to JsInliner
Code Review: moved check* test methods to InlineTestUtils
Code Review: use test directives
Code Review: moved contexts to separate package
Code Review: moved methods from InliningContext to FunctionContext
Code Review: converted InliningContext to kotlin
Code Review: converted InsertionPoint to kotlin
Code Review: removed RenamingResult
~~ renamed SideEffects -> sideEffectUtils
~~ moved sideEffectUtils to util package
~~ moved needToAlias to sideEffectUtils
~~ negated logic in side effect detection
~~ moved methods to FunctionInlineMutator