JS Inline: added CloningVisitor
JS Inline: added InlineableResult
JS Inline: added FunctionInlineMutator
JS Inline: added JsInliner
JS Inline: save static ref to JsFunction in JsName
JS Inline: collect defined functions
JS Inline: 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)
JS Inline: save inline status during translation
JS Inline: inline function calls
JS Inline: run JsInliner after AST is built
JS Inline: rename repeated local names
JS Inline: alias arguments of inlining call
JS Inline: replace return statements with break on label
JS Inline: insert statements of inlineable JsBlock directly; do not declare result if not needed
JS Inline: made invocation arguments modifieable
JS Inline: renaming refactoring
Lambda with Capture very temporary commit
Rewritten using Inlining context
Do not alias literals
Lambdas with captures