This commit introduces the use of C++ to wrap all calls to libcurl and provide a simplified API. This API makes downloading the runtime much easier internally.
In the process of moving to a C++ wrapper class, the old "have libcurl write into an in-memory buffer directly" approach was replaced with a "use a WRITEDATA callback and handle this ourselves" one, allowing us to make just a single GET request to the server.
This commit introduces the use of C++ to wrap all calls to libcurl and provide a simplified API. This API makes downloading the runtime much easier internally.
In the process of moving to a C++ wrapper class, the old "have libcurl write into an in-memory buffer directly" approach was replaced with a "use a WRITEDATA callback and handle this ourselves" one, allowing us to make just a single GET request to the server.