Template based job creation

Adds capability of creating new projects for repositories with no job, using an existing Jenkins job as template, either using a single template for all unknown repositories or based on the repository name or group.

Although it doesn't merge automatically, I've cherry-picked the commits producing the conflicts and solved remaining ones, so it is safe to merge manually accepting changes from my branch (using -Xtheirs).

The only test I've not been able to fix is

    spec/values/project_spec.rb:113 # GitlabWebHook::Project when determining if matches repository url and branch when parametrized does not match when branch parameter is not of supported type

which produces a "only string parameters for branch parameter are supported" warning instead of the expected exception.
I assume this has to do with group templates somehow. No specs so can't be sure :-)
By the code, I suspect you wanted to extract the domain for the commit, so it can be used to match templates from matching groups.