updated to include rule checking and coloring

does a probabilistic coloring of edges (doColoring) remaining
consistent with the rule (not quite described, but is contained within
the ruleCheck function.