fixes #5026 / BZ 1094176 - content view package group filter - handle duplicate group names across repos

The current logic for package group filters does not properly handle the
case where a content view has multiple repositories with the same or overlapping
package groups (e.g. 2 repos w/ package group named X).  The issue is that
the package group selection is based upon name; however, it needs to be more
specific than that.

This commit updates the package group filtering to not identify the group
by name, but instead by the pulp id/uuid for the group.  This way when
a user selects a group, they are choosing a specific one from a specific
product/repo.

The following are high-level changes introduced with this commit:
1. add uuid to the content_view_package_group_filter_rule
2. update the API and UI to show the product and repo name that
   each package group is associated with
3. update API and UI to behave correctly when a user adds/removes
   package groups from a filter
4. update the publishing logic to utilize the package group uuid
   when applying the filter