Look, the Confederate flag means slavery, hatred, bigotry and treason against the USA.
Does it? I was born in the northeast and am now located in the south. Race riots were in full swing when I was a kid. I have no love for the Confederate anything and don't feel it should be flown on federal buildings, and probably not state buildings either. But if someone wants to purchase one, then they damn well should be allowed to.
I don't hang out with racists, so I don't know what that flag represents to everyone who chooses to display it. If they claim it's not due to racism, then I'm inclined to believe it. The civil war is over and the south lost. I wasn't around 150 years ago, so I'll reserve judgement on what it was over. But if someone feels it simply represents their heritage, then so be it. In the city I live in, it's been part of the city seal for well over 100 years. Now there's debate about changing this. The British flag is also part of that seal. Shouldn't it be removed too? After all, at one point it represented oppression too.
The swastika was around for a couple thousand years before the Nazi party decided to adopt it as their symbol. (and no, I'm not trying to Godwin this post, it's just a very commonly known symbol). If a group can adopt a symbol that is meant to represent prosperity and turn it into what is now associated with evil. Why can't a flag that represented something bad be reclaimed as something else? It is happening with all kinds of things these days. There's a Jewish magazine called "Heeb". That was considered a very derogatory term when I was much younger. I've been referred to as "nigga" by friends, which I find offensive no matter who it comes from. But it's the intent that's more important than the word, symbol, or flag in this case.
It's supposed to be a free country. If someone wants to be a racist ass, then so be it. As long as they aren't infringing on anyone else's rights, they should be free to be as stupid as they wish to be. The First Amendment is not there to protect speech that everyone agrees with.