2-stage loader for JavaScript
Move the interpreter probing also to _init_2stage

- Improved error messages about the initial setup
- Clenaer __init__
- Handle raw tty switching earlier
2-stage loader for Perl.
Python: force flush in stage1.
Rename __PY_BOND_SerializationException to a single underscore.
JavaScript: add local/recursive scope tests
Python: add local/recursive scope tests
Perl: add local/recursive scope tests.
PHP: fix scope of EVAL/EVAL_BLOCK

PHP's eval is quite limited and literally executes in the context of the
caller. As such, it has full access to our locals, and breaks with recursive
behavior.

Implement our own exec/eval replacements to simulate evaluation in global
scope and protect our repl.