         ctx[name] = ->
           helper.apply(ctx, arguments)
     
-    ws_handlers.connection.apply(ctx) if ws_handlers.connection?
+    ws_handlers.connection.apply(ctx, [ctx]) if ws_handlers.connection?
 
     socket.on 'disconnect', ->
       context = {}
-      ws_handlers.disconnect.apply(ctx) if ws_handlers.disconnect?
+      ws_handlers.disconnect.apply(ctx, [ctx]) if ws_handlers.disconnect?
 
     for name, h of ws_handlers
       do (name, h) ->

          socket.on name, (data) ->
            ctx.data = {}
            ctx.data[k] = v for k, v of data
            h.apply(ctx)

  # GO!!!
  func.apply(context, [context])

    for k, v of obj
      js = ";zappa.run(#{v});"
      route verb: 'get', path: k, handler: js, contentType: 'js'
      v.apply(context, [context])

  context.include = (p) ->
    sub = require path.join(context.root, p)
    sub.include.apply(context, [context])

  # Register a route with express.
  route = (r) ->
