Issue #151 Modified infusion format and bytecode: added noop "branch target" instructions to mark the address that a branch will jump to. The method definition header contains the number of such jump target instructions.
The plan is to have a jump table at the beginning of each methods so we don't need to keep lists in memory and do complicated patching while processing branches. Instead each branch instruction contains the index of the branch target so we can just jump to the address in the table (the start address of which will be known when generating the code). When the compiler finds a "brtarget" opcode, it can add the appropriate address to the table.
Usually most methods don't contain many overlapping branches, so keeping a small list should usually be doable, but especially if...else if...else if...else if...elseif...else sequences create a lot of overlapping branches.

Currently branch instructions contain both a bytecode offset and a branch target index, so that the bytecode can be both interpreted, in which case the brtarget instructions and indexes in branch instructions are ignored, or it can be compiled. (when I implement the compiler side of things that is.)