I did what you are trying to do by making the categories private and using the groups page to allow people to join different groups. I added one public category with Welcome messages to direct people to the groups page. Once they join the group, they start getting posts, notifications, emails only for the applicable categories based on the setting for those categories.
It might be a little easier if there were public/hidden/private categories. Currently there are only public/hidden, but the group thing works. You can see it at https://community.talkbaq.org/