It takes awhile to compile because it is doing a lot. Nothing can really be done about that except decrease the number of cells (which I did, as you can see in the code I posted.)
Did you add the saveState method? Did you add it to the constructor?

