JS Backend: preserve statement scope when modifying current block

This fixes issue with `addToCurrentBlock`,
that worked wrong sometimes, when statement
was not contained in a block.

For example:
	for (i in 1..10) some_statement;

If `addToCurrentBlock` had been called in `some_statement` scope,
the statement was added before `for`, which is incorrect.

The solution is to add inner block before translating statement
(that can be removed after).