Here's a novel idea! What if, bear with me on this, voters actually chose their candidates based on the candidates' stances on important issues! I know that sounds like complete insanity. It definitely has nothing to do with the high school popularity contest with which we choose our leaders.
But just in case you wanted to vote in an intelligent manner, I'd recommend you check out this link: Pick Your Candidate. It's a clever little script written by some dude name Matt Waterman. Good work, Matt!
Since it ranks by the fewest disagreements, that would seem to favor candidates, like Gravel, who have unknown stances on many issues. Not surprisingly, my closest match was Dennis Kucinich, who, as you may recall, astonished me by making the most sense in the first debate. Apparently people are complaining that the script favors Kucinich, and Matt is trying to rectify things. I wouldn't be surprised if it was really true that Kucinich is the closest match for a lot of people and that they were surprised by this because no one votes by issue.
The script also says that I disagree with certain candidates on some issues that I was pretty sure we agreed on. Of course it's so hard to actually get a candidate to take a yes or no position on anything that these scores can only be an estimate anyway.