subscribed/not subscribed is kind of easy and having 2 collections is not too painful but it gets more complicated when you have multiple levels of access which open up different fields on a user by user basis for example instead of being related to a subscription class