One of our major challenges is making voting easy for the average person who doesn't have time to follow 101 different delegates. For this reason we are going to make voting even easier: you can delegate your selection of delegates to a single delegate. How it works is this:
1) Every delegate may optionally specify a slate ID as part of their public data. This slate ID identifies up to 101 delegates supported by that delegate.
2) Every user can select one or more delegates to approve of
3) The wallet will automatically combine the public slates of the delegates that user approves of to produce their votes.
1) More people voting with the same slate ID increases privacy
2) The default wallet can hard-code the developers own account as the default recommendation
3) Delegates are now competing not just on pay-rate, but also on how well balanced their selected slates are.
4) Users still have to transact to update their votes so they don't give up control of their votes, they merely have auto-recomendation.
5) More similar slates reduce block chain bloat.
6) Lobbying to become a delegate can now be focused toward existing delegates for endorsement.
7) We can enable "down votes" that simply remove delegates from the "recommended set"
This is no more centralized than the current system and in-fact, encourages decentralization because delegates compete on making solid recommendations that include other delegates.
With this in place there is no need to charge extra for not voting.