The Advanced Poll module now supports approval voting in CVS. Approval voting is implemented by adding a "maximum choices" option for each poll. If it is set to one the poll behaves as usual and users can only vote for one option. If it is set to something else (something greater than one, or 0 for no limit) users may check off the choices that they approve of, up to whatever "maximum choices" is set to. For example, if maximum choices is set to "2" users may vote for their top two choices in a given poll.
About Advanced Poll
Advanced Poll seeks to expand upon the default poll.module by providing all current features and implementing additional voting systems and electoral methods. Currently Advanced Poll supports pluraility voting, approval voting, and instant-runoff voting. It also supports "electoral lists," which optionally limits voting to users with the appropriate permissions at the time the poll is created. Future plans include Ranked Pairs (Condorcet), Borda Count, CPO-STV, Ajax support, and more.
Bug reports and feature requests are encouraged as the module currently has little input outside of the development group. Additional developers would also be great if anyone is interested in implementing voting systems.