@ ZenCoder
Adding a paper trail doesn't change a blind thing.
You can press button A on the machine, have it print A on the till roll, and still record a vote for B. This is an inherent problem with any system that relies on counting a hidden *copy* of the votes, as opposed to the actual votes themselves.
Making the design open doesn't change much, either.
For a start, only a minority of the population at large can make sense of it. And for another thing, you can't be sure the machine on which you cast your vote is the same one you've examined, nor that it hasn't been altered in the meantime.
I have designed a direct-recording mechanical vote counter which is as close as you can get to universally comprehensible. Almost every part of the mechanism is visible through the transparent polycarbonate housing, only the number wheels of the individual candidate counters are obscured by distorting lenses, and you can see your counter and the total counter -- and no others -- increment as you press the button for your candidate. (No copy is made here: pressing the button directly increments the candidate's counter and the total counter together.) You can't vote multiple times, because the machine has to be primed (remotely, using a Bowden cable) by the presiding officer for each vote. At the close of polling, the machine can be locked unprimeable. Counting is then a matter of subtracting the "after" figures from the "before" figures, which were recorded before the polls opened and left in plain sight throughout.
But to be honest, you may as well just use pencil and paper, which *is* universally comprehensible and is not limited to first-past-the-post. Also, as long as the candidates themselves do the counting, there is a built-in system of checks and balances: none of the counters trust any of the others, so the only way they can agree on a result is if it is the correct result.