         
     }
     
-    //MARK: Delegates -------------
+    //MARK: Delegates
     public func mdwamp(wamp: MDWamp!, sessionEstablished info: [NSObject : AnyObject]!) {
         print("Session Established!")
         delegate!.onJoin()

////////////////////

/*
 Cumin allows for type-safe deferred method evaluation
 through currying. Not sure how to make it play without variadic generics, though there might be a way

TODO: 
    throw a well known error on miscast
    throw a well known error if args size doesn't match
    hold method weakly, dont call if deallocd
*/

/////////////////

                }
        }
    }
    
    
    //MARK: OLD CODE
    public func register(endpoint: String, callback: (AnyObject... ) -> ()) {
        session.registerRPC(endpoint, procedure: { (wamp: MDWamp!, invocation: MDWampInvocation!) -> Void in
