Consider the following questions:
1) Should the candidate with the most support win an election?
2) Is it possible to support more than one candidate?
It's really hard to argue with 1 and 2 is definitely true. So, instead of allowing a voter to vote for just one candidate, he/she should be allowed to cast a vote for every candidate they support. Assuming we can count the votes with any sort of accuracy, then the winner should be the candidate who get's the most votes.
Another way of looking at this is to frame an election as picking the candidate that the most voters find acceptible. In the current system, many voters don't even vote for who they think to be best candidate, for fear that their vote will be wasted. And we've created a who extraneous system, the parties and their primaries, to avoid having candidates with similar positions split the vote.
This new system, which we'll call "multicandidate selection," takes away the false choice that one must pick between multiple acceptable candidates. It seems ridiculous that a popular set of principles or platform suffer because multiple candidates share it.
Multicandidate selection more informative as well, all of the voter's preferenced candidates receive credit and positive feedback.
If we treat an election as a constraint satisfaction problem, then with multicandidate selection we're picking the candidate that best satisfies the constraints. With the current system, however, it's not clear to me what we're picking.
Questions remain, of course. What to do in the case of a tie? Well, minimally, we could have a run off where current vote for only one candidate rules apply. We might also include a ranking system in the original ballot, but to preserve the "selects the candidate acceptible to the most voters" property, the ranking system could only come into play due to a tie.
Still, I can't see how multicandidate selection is in any way inferior to the current system. Do we really believe that, in any given election, one only candidate is capable of the job?