ignoring null in replaceVariables()

seriously, it is too commonly used to trigger an error
<restart/> was so broken...

Added getFirstScene() to interpreter not to look for first label each
time.
Shifted the stack before changing the scene so that <restart/> inside
<sub> or <trigger> does not make stack grow.
Added a small extension that dumps the stack to 'backtrace' variable.
wse build updated

nothing to see here
removed most of legacy behaviour
<while> command :3