Add (some) support for unofficial/illegal instructions.
Add (some) support for unofficial/illegal instructions.

Unofficial instructions are extremely rare in licensed games, but prevalent
enough in homebrew games to be worth including.

This commit adds all of the "useful" unofficial opcodes. It does not add
support for the weird ADC #ii SBC #ii variants, nor any instruction that
is unstable or unreliable. It does not implement IGN correctly w.r.t. reads
and page boundaries, but I doubt that will ever be an issue.

Further reading:
https://wiki.nesdev.com/w/index.php/CPU_unofficial_opcodes
https://wiki.nesdev.com/w/index.php/Programming_with_unofficial_opcodes

bfirsh/jsnes,bfirsh/jsnes