Add custom attributes filtering for groups

What does this MR do?

Adds support for filtering groups by custom attributes, e.g. GET /groups?custom_attributes[key]=value.

A new CustomAttributes field on ListGroupsOptions accepts a CustomAttributesFilter map that encodes to the custom_attributes[key]=value query format expected by the API. It also applies to ListSubGroups and ListDescendantGroups (aliases of ListGroupsOptions).

opt := &gitlab.ListGroupsOptions{
    CustomAttributes: gitlab.CustomAttributesFilter{"location": "Antarctica"},
}
groups, _, err := client.Groups.ListGroups(opt)

Changelog: Feature

Closes #1617 (closed)

Merge request reports

Loading