I do think it's unfortunate that we assume that the two current major parties are the only parties that will ever exist. The political parties have changed over the years and the only thing stopping them from changing again is the attitude that they can't change.
That said, if you're leaning toward voting for McCain but would really prefer the Libertarian candidate, then I think you should definitely vote for the Libertarian! If you're leaning toward voting for Obama but would really prefer the Libertarian candidate, then vote for Obama anyway