         initialize: ->
             super
             c.subscribe c.SESSION_OPENED, =>
-                @fetch().done => @ensureSession()
+                @fetch().done =>
+                    @ensureSession()
+                    @resolve()
             c.subscribe c.SESSION_CLOSED, => @reset()
-
-            # Mimic the initial sync for each model
-            @on 'reset', (collection) ->
-                @resolve()
-                for model in collection.models
-                    model.trigger 'sync'
-                return
 
         getSession: ->
             (@filter (model) -> model.get 'session')[0]

        # Add one or more nodes to this branch.
        add: (nodes...) ->
            if not @isBranch()
                throw new Error 'Node is not a branch. Use "promote" to convert it into one'
            @get('children').push nodes...
            return @


                        @root = children[0]

                @_deferenceNode node
                if @options.autosave then @save()

        # Removes all nodes from this context
        clear: ->
            # Unbind all change handlers
            for cid, node of @clientNodes
                if @options.autosave then node.off 'change', @_nodeSave

            @nodes = {}
            @clientNodes = {}
