feat: OAuth authentication to GitLab.com

Includes token refreshing.
11 jobs for !567 with 561-token-exchange-service in 10 minutes and 9 seconds (queued for 1 second)
merge request