     private var attemptReconnectCount = kAttemptReconnectCount
     private var connectionCompletionBlock: WebSocketConnected?
     
-    public init(url: URL,
-                queue: DispatchQueue = DispatchQueue(label:  "com.autograph.WebSocketClient", qos: .default)) throws {
-        self.queue = queue
+    public init(url: URL) throws {
         let request = try WebSocketClient.connectionRequest(url: url)
         self.webSocket = WebSocket(request: request)
         self.webSocket.delegate = self

                responseHandler.didFinish(error: error)
            }
        }
    }
    
    public func unsubscribe<R: Request>(request: SubscriptionRequest<R>) throws {

        }
    }
    
    public func disconnect() {
        guard self.state != .disconnected else {
            return
        }
        
        // TODO: Possible return something to the user if this fails?
        if let payload = try? GraphQLWSProtocol.connectionTerminate.serializedSubscriptionPayload() {
            self.write(payload)
        }
        
        self.webSocket.disconnect()
    }
    
    public func subscribe<R: Request>(request: SubscriptionRequest<R>, responseHandler: SubscriptionResponseHandler) {
        self.connectionCompletionBlock = { (result) in
            switch result {
            case let .success(isConnected):
                if isConnected {
