Use python-gitlab for http requests
Part of #375. Partially helps with #314 (closed), but we can still hit requests timeouts.
This brings in python-gitlab as a dependency and uses it for HTTP requests.
While a bigger refactor would make sense in the future, this at least allows us to quickly make use of python-gitlab's retry logic and error parsing.
Freedesktop SDK's marge-bot deployment has been making use of these changes since 23/08/24.
Edited by Ben Brown