[Reviewer: Ellie] Proper timeout errors

This adds two new cURL error codes,  CURLE_RESOLV_TIMEDOUT and CURLE_TCP_TIMEDOUT, to make it easier to distinguish between HTTP failures due to different causes, raise appropriate SAS logs, etc.