Add a general webhook manager mechanism
Please describe the enhancement
Currently we've hardcoded webhooks handling for github. While this works for now, this is not something we can re-use for other providers. The idea is to add a general mechanisms to add webhook handlers for providers.
Solution Proposal
The idea will be to re-use the unique identifier we currently have for webhooks and link those to specific provider implementations. With every webhook event we'll do a lookup through the database to figure out what provider we need. We'll instantiate the provider, and then we'll do the webhook handling from there. Each provider will contain the code to handle webhooks.
This initial iteration will only define the mechanism and migrate the github webhook handler to use it.
Describe alternatives you've considered
No response
Additional context
No response
Acceptance Criteria
No response