Idea: kill this field, and replace it with a new protected final field, `OkHttpClient client`. When the proxy is changed, just call `client.setProxy(...)`. Then you can kill `newHttpClient()`, and simplify `open()` so that it doesn't need to concern itself with the proxy.