JsInline: save block contexts to stack

Reason: need to be able to insert inlined body
before current statement (that might be
distant parent of node currently being
processed)
JsInline: save inline status during translation
JsInline: inline function calls
JsInline: run JsInliner after AST is built
JsInline: rename repeated local names
JsInline: alias arguments of inlining call
JsInline: replace return statements with break on label
JsInline: insert statements of inlineable JsBlock directly; do not declare result if not needed
JsInline: made invocation arguments modifieable
RenamingVisitor Generic
CloningVisitor Generic
RenamingVisitor -> Mod Visitor
NameCollector @NotNull
JsInline: renaming refactoring
Lambda with Capture very temporary commit
Rewritten using Inlining context
Do not alias literals
Blacklisting scope names
Lambdas with captures
Should preserve qualifier during renaming