More branch/compare work

While thinking about the toolchain I realized I hadn’t ever finished implementing branch instructions. Today I added a microcode bit to negate branching (for the ‘if not’ jump instructions), and implemented the jmpnz and jmpno instructions.

Also updated the test runner to allow ‘x’ in bitfield definitions to specify bits that can be any value and pass. This will prevent tests from accidentally testing other features at the same time.

Thought about how the ‘jump if equal’ (or greater than or less than) will work and realized i need an instruction to load the values of registers into X/Y, so added this (cmp16). The 8-bit versions need implementing still.