new bytecode emitter, GenBCode (11th attempt)


This PR re-submission supersedes #2603 and takes into account review comments so far.

Compared to the previous PR, pipelining is left for a future PR (same goes for "built-in" dead-code elimination and jumps-chain collapsing). This PR includes just the bytecode-emitter.

Let's see what dbuild thinks about GenBCode (after changing in `ScalaSettings` the default for the `neo` option from GenASM as in this PR to GenBCode).


review by @gkossakowski or @JamesIry or @retronym or @paulp