Add more comments and logging for CPU.step()
GUICycles: clean-up

* remove useless imports;
* remove unused variable;
* factor the color selection code into a separate method;
* more explicit variable names.
Instruction: add more details to toString

And also fix a wrong comment. (Even if comments in general are a mess.)
CPU: log contents of the pipeline at every cycle

(In debug mode.)
Log adding instruction to IF only when it happens

Also, remove useless code.
Fix order of actual vs. expected values in runForwardingTest

Also, rename the parameters to make clear that they are expected values.
Start program termination in ID rather than in IF

Fix an issue introduced in commit 888f444, in which the program termination
sequence was initiated in IF both by SYSCALL 0 and by HALT. This would cause
premature termination if the terminating instruction was fetched because of
branch misprediction. Also add 2 unit tests for this behavior.

Fixes #51
Inhibit visual rendering of BUBBLE instructions

Fixes #50