The class GameOfLife contains an "update" method which takes in a single argument with a default parameter. The argument is compared with an internal member variable and if equal the time out id is cleared and play is paused.
This version of the passed method I enclosed in an anonymous function wrapper and tried slapping the function onto the window object to make it accessible everywhere. This turned out being a bad idea because the window object doesn't have all the other members and methods the update function relies on. But it did bring me closer to working code.
Third time's a charm:
Finally, after several interweb searches and rereading CoffeeScript docs it struck me. This is the perfect time for the FAT arrow. This time I passed in an anonymous function with the fat arrow
to bind the method always to the GameOfLife class it was called from, and removed the update function from the window object (whew). Eureka, it worked!
You can see the wiggling results at my html5 life page.