codeintel: Upload QoL improvements
Created by: efritz
This PR updates the code referenced by src cli to upload LSIF indexes. Improvements include:
- threading context through uploads
- cancelling requests if one upload part fails after 5 (by default) attempts
- fixing odd condition where the payload would be uploaded successfully (which would show as "done"), then be rejected and retried; we now prevent things that might not complete from being marked as such
- showing the user when retires occur
- showing the ultimate error by default (guarding against proxy and Cloudflare WAF errors, which I assume are HTML/XML payloads)
Fixes #29369 (closed). After this merged we must update the lib dependency in src cli.