this is a libcurl c++ wrapper