This naughts-and-crosses game is implemented in Clojurescript using Om and core.async. See Github for the source.
-Nat EP