Dramatic speed improvement

Instead of calling context.getImageData(x-1, y-1, 2, 2) on every
"step()" ,  the updated version calls it only once on the entire canvas
size, then calculates the "rgba set" index for each pixel .  Up to 20
times faster :)