Additional checks and print statements to help find bug
Complete overhaul of KeySet iterator implementation.

These changes where required for compatibility with the standard
library implementation on iridis.
Relaxed maxsumHarness requirements

Previously we required maxsum to do better than random on non-colourable graph.
We still report this, but no longer treat failure as an error.