A large part seems to also be the insane first past the post voting system. A presidential vote, as I understand it, is only counted against a single candidate (unlike preferential voting for example). This makes the risk of a third candidate much greater and really funnels the system into just two real candidates.