You and I seem to be aiming at the same goal post. I’m building out Vote.Gold in exactly this way. Private group NIPs are being developed right now. Lots of proposed architectures … none settled yet … so I’d point you to the discussions on GitHub for more info.
https://github.com/nostr-protocol/nips/issues/717