Clean up build system and code layout.

This uses real, big-boy makefiles instead of a shell script and moves
all of the opcode-handling weird .h files all into one directory.