Add a bunch of generalised ALU instructions. Some cleanup.
GCC BUGFIX: maybe. This file seems to be using #ifdef where it should be using #if, which causes a paragraph to be enabled when it shouldn't be. This causes my backend to crash.
Split mov mem->mem up so they use a temporary register.
Refactor the ALU stuff to be less pattern-happy (as this is apparently bad).
Refactored movsi; fix ALU smallint encoding.