 class Controller extends Spine.Controller
 
   constructor: (opts={})->
-    nodeOpts = opts
+    @_nodeOpts = opts
+    @_node = null
 
-    _node = null
-
-    @node = ->
-      unless _node
-        _node = new Exo.Node nodeOpts
-
-        # Store a reference of this to substitute
-        # in outgoing events/function calls.
-        _node.controller = @
-      _node
-
-    @nodeId = -> @node().nodeId()
-    @setNodeId = (id)-> @node().setNodeId(id)
-    @setMode = (mode)-> @node().setMode(mode)
-
-    @activate = ->
-      @node().activate()
-
-    @deactivate = ->
-      @node().deactivate()
-
-    @toggle = ->
-      @node().toggle()
-
-    @deactivateChildren = ->
-      @node().deactivateChildren()
-
-    # Delegate the transitions to this object.
+    # Delegate the Node transitions to this object.
     @node().beforeActivate = =>
       @trigger 'beforeActivate', @
       @beforeActivate?.call @


    super opts
    @prepare()

  prepare: ->


      @trigger 'onChildDeactivated', node.controller
      @onChildDeactivated? node.controller

    # Clean up options before we send them to
    # Spine.
    delete opts.initialState if opts.initialState
