Add Labels and fix JUMP instruction

Add labels (which only allow predefined jumps - You can only jump back
to a label, not forward) and changed JUMP to work from a 4-byte offset
rather than an integer on the stack.