Use variant type to represent webhook events.

I made the mistake of using String to represent the webhook events when a nice variant type is the perfect match. I am fixing my bad decision. It makes it more discoverable imho.

The docs about the different webhook events is available here: https://developer.github.com/webhooks/#events

@maxpow4h what do you think?