     public func execute<Model: Decodable>(request: URLRequest,
                                           with decoder: JSONDecoder = JSONDecoder(),
                                           handler: @escaping Handler<Model>) {
-        // Ensure all our responses are back on the main thread
-        let completion = { response in DispatchQueue.main.async { handler(response) }}
-        
         #if os(Linux)
         // See https://gitlab.com/optimisedlabs/URLSessionRegression
         let session = URLSession(configuration: .default)

        
        self.configuration = configuration
        self.session = URLSession(configuration: configuration)
        
        dumpAllConfigurationHeaders()
    }
    
    public init(configuration: URLSessionConfiguration) {
        configuration.httpAdditionalHeaders = Constants.defaultHeaders
        
        self.configuration = configuration
        self.session = URLSession(configuration: configuration)
        
        dumpAllConfigurationHeaders()
    }

                }
                
                let model = try decoder.decode(Model.self, from: data)
                self.queue.async { handler(.success(response, model)) }
            } catch {
                self.queue.async { handler(.failure(error)) }
            }
        }.resume()
    }
