You are mostly in the right track based on your explanation.
There are a number of approaches you can take, but the one I would recommend is to start with a "template test set" that includes most of the relevant tests that you want all your users to run. Then you can clone this set and perform the specific adaptations to your individual testers (that is only if there are such tests that need to be added or taken out for their specific cases).
You should assign the sets to the people and use the type of filter you mentioned for them to see only the things that are relevant to them. Sometimes, if you have testers running sets for multiple versions of your product you may want to make this filter more specific so that they will see only the sets that are for each of them and for the version you are working on.
Up to now you took care of their test execution, and now you want to organize this data for your reporting needs, and that you can do by creating a filter that will show all the test sets for this version that your testers have been running, and using a combination of dashboard graphs and the newly released "Tabular Aggregated Report" that will let you see a comparison of your tests across your different test sets.
Hope this helps & if needed please tell us and we will be happy to help!