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.
What would group templates be used?
Can you provide a use case, maybe describing the flow?
What is the difference between this and regular templates?