   constructor: (shape) ->
     super shape
     @codes = {}
+    @errors = false
 
   addCodes: (codes, pos) ->
     for symbol, code of codes

      @nodes.push(newval)

    @codes[symbol] = newval
    # TODO: needs to check for errors, I think this should be done
    # here even if it is less efficient just to be safe

  arrangeCodes: (start_x, start_y) ->
    y = start_y
    for symbol, codeobj of @nodes
      codeobj.x = start_x
      codeobj.y = y
      y += node_text_spacing

link_style = stroke: 'white', width: 1.5
light_link_style = stroke: 'white', width: .5
node_text_style = fill: 'white', font: '16px monospace'
node_text_error_style = fill: 'red', font: '16px monospace'
node_text_spacing = 18
menu_text_style = fill: 'white', font: '16px sans'
menu_text_invert_style = fill: 'black', font: '16px sans'
