patched up opcode processing

biggest part is probably that it uses extraction functions for nibbles
and bytes