Theory: All political movements need an agenda, or a villain.
Libertarianism is the first type. The average libertarian has a set of proposals he wants – lower taxes, less regulation, legal drugs, etc. – and keeps pushing until they get passed.
The pro-choice movement is the second type. Abortion is already legal, as much as Mississippi doesn’t like it. There’s no new agenda to implement. But there is a villain – the pro-life movement, which can be made appropriately evil and scary-sounding. Likewise, the pro-life movement’s villain is the horrible baby-killing pro-choice movement. Two such groups can be each others’ villains, and so can keep fighting forever and ever.
If there’s neither, a movement whithers away. For example, almost everyone opposes Nazism. Yet, there are no big anti-Nazi rallies in the streets every week. No one calls you to push anti-Hitler petitions, or denounces proposals to add swastikas to the flag. At some point, people just got bored and did something else.
This means, interestingly, neo-Nazis are doing Nazism a huge disservice. There’s no chance of them ever winning elections. And their existence galvanizes opposition to Nazi ideas, by giving everyone a villain to hate. (The one time you do see anti-Nazi protests is around Nazi rallies.) Conversely, if you want to kill a movement, tell everyone they hate to shut up.