If `primary` is the last member in the list, then will this end up with `votingMembers==-1`, with one too many voters?

Or will primary always be the first member in the list or some such? If so, deserves a comment to say about that assumption.