Disassembler now works on the test case forty-two.
Most opcode actions in the primary opcode map were incorrect due to the same action appearing at multiple indices.

Added nicer printing to opcode actions.
Disassembling the threePlusFour test now works.
Disassembler significant refactor - phase 1.

The only test known to disassemble correctly at this point is fortyTwo. Some artifacts of the Old Way are still present.

Realized that the existing organization wouldn't handle instructions requiring a SIB byte. To handle this made operands first-class objects and gave them responsibilities formerly handled by DisassemblerInstruction. Also better allowed for varying effective operand sizes.
Disassembler operand handling the new way has advanced to handling normal register operands, allowing the threePlusFour and printH tests to disassemble.
Disassembler now handles memory addressing modes (without displacements for now) which allows the print7 test to disassemble.
Disassembler now handles addressing modes with signed displacments, and can disassemble the code from all extant Fog tests. Woohoo!
ignore images in checkout
Merge pull request #5 from timfel/add-gitignore

ignore images in checkout
Commented out breakpoints in tests.
Removed one unused class variable, moved another to the specific subclass where it's used.
Merge branch 'issue4-testauto'
Merge from master
Correction to merge from master.
Factored test programs into separate methods from the tests.
Added disassembler tests, one disassembling each of the Fog test programs.
Added a broken test for Fog conditionals, refactored tests a bit to make running the program multiple times with different input easier.
isB test mistakenly accessed bufPtr when it was not in scope. Conditional and Compare Fog nodes can now be created and printed, but not yet compiled.
Fixed a bug in register allocation that was exposed by the isB test case.

Cleanup, removed: extraneous disassembly from FogTests, no-longer-used AnyLocation, some unused methods.

The isB test was fetching and storing a 64-bit word instead of a byte. There wasn't a way to fetch a byte, there is now.

More progress towards getting the Compare and Conditional nodes working.

Fixed/enhanced some code comments.
Much closer to getting conditionals to work. CodeStream now understands labels, which do not have to be defined when referenced, allowing one-pass compilation. The address to compile to is now kept track of. CodeStream can now assemble jmp and jcc instructions. The ability to disassemble jmp and jcc instructions is underway.
Fog conditionals are now complete! Both conditional and unconditional jumps now work.

FetchByte was leaving garbage in the upper bytes of the result 64-bit word.

Fixed some comments.

Fixed the indexing used by FetchByte, which was indexing by 8s instead of by 1s.

Disassembler now handles the added instructions.