   value
 
 class Timelimit
-  constructor: (@timeout=1000) -> "NOTHING"
+  constructor: (@timeout) -> "NOTHING"
 
   check: =>
     return unless @started?

    @options ?= {}
    @matrix ?= new THREE.Matrix4()

    console.log "Options:", @options
    console.log "Matrix:", @matrix

    # Start a timer if we have a timeout
    if @options.timeout?
      @options.timer = new Timelimit(@options.timeout)

    @tree   = @toTree treeIsh


    @started ?= Date.now()
    @tasks ?= 0
    @tasks += 1
    do @check

  finish: =>
    throw new Error("Finished more tasks than started") if @tasks? and @tasks < 1
    @tasks -= 1
    elapsed = @check()
    if @tasks == 0
      @started = undefined

  doTask: (block) =>
