         }
     }
     
+    func getEvent() -> String {
+        return data[0] as! String
+    }
+    
+    func getArgs() -> [AnyObject]? {
+        var arr = data
+        
+        if data.count == 0 {
+            return nil
+        } else {
+            arr.removeAtIndex(0)
+            return arr
+        }
+    }
+}
+
+extension SocketPacket {
     private static func findType(binCount:Int, ack:Bool) -> PacketType {
         switch binCount {
         case 0 where !ack:

    }
    
    func createAck() -> String {
        var msg:String
        
        if type == PacketType.ACK {
            if nsp == "/" {

        self.type = type
        self.placeholders = placeholders
        self.binary = binary
    }
    
    mutating func addData(data:NSData) -> Bool {
