I'd set it up like this: If you click the button you vote, if you click the picture you go to the candidate description. But - if you go to the candidate description page you should still be able to vote for that candidate against any other candidate.
Keep it short and sweet.
Reminds me of the bike shed story (http://bikeshed.com/) ;)
You have to make the voting area easy to click (nice and big) and in the same position every time. The photo is the most logical choice.
I agree about the explanatory text, but my reflexes are conditioned to stop and read a submit button before I click it, and parsing the text on the buttons (which changes every time with the candidate's name) adds time to the transaction. You could solve this by making the text consistent from page to page, if you're wedded to the buttons.