This allows constructing an instance in any thread, and register it inside the IOThread later.
The CurlRequest gives us a more low-level API to CURL without the InputStream interface, integrated into our IOThread.