pretty much done - just need to do scoring and timing, then onto clojurescript