Added gitlab controller, route, spec

Almost the entire thing is identical to the github controller spec etc. Only
difference is that there is detection of create & delete operations. It isn't
based solely on the params provided in the webhook. Using this git convention
could allow you to DRY up the entire GitLab and GitHub controller job and
model of the payload. But in the interest of keeping things different for
the time being, I've duplicated some code.
I don't think the `jsonPayload` variable is necessary, AFAICT it should be removable without breaking anything here and just referring to `json` below.