Telika: It's not completely unusual to have a derogative term reappropriated and reversed by the target group, as some form of defense, defiance and resistance. It doesn't neutralise the term generally, it makes its value very context-dependant, or speaker-dependant...
donsanderson: True, and THAT makes political correctness an impossible subject to discuss.
In the US what is correct in one place may be "fighting words" just a few hundred miles away.
Hell, our own regional accents and slang can be cause for difficulty in communication. :-(
Being an old guy I pretty much guess at what's correct and prepare to duck.
Pretty soon I'd just have to stop talking otherwise. (no chance) :-)
Even in smaller countries, the "polite" or "offensive" flavor of a word may vary greatly with the community (age, social group, region) using it. "Con" (cunt) and "putain" (whore) almost function as punctuation in the south of France, but can be quite violent in the north. "Malaka" in Greece is both one of the most brutal and offensive insult, and a way to call each others amongst friends (like "dude"). Not to mention that these things evolve a lot with time, and generations jumps.
Also, "political correctness" is not always a very useful notion, to describe the values of these words. Sometimes it's just decency - one word being okay in one situation and shockingly out of place in another (you don't swear the same way at home or in front of your boss, or even in different workplaces). And sometimes it's really about the conveyed meaning. "Faggot" tends to mean "homosexual-which-is-a-bad-thing-by-the-way" (neutralised when it's used, in derision, within homosexual communities, just like "nigger"). "Nigger" used to imply something that goes beyond dermis tint (something more like a "race", with deeper predetermined traits) so it's more associated with racialism, and tends to convey this whole imagery. Quite often there is a reason for the shifts of language.
But yeah, the meanings of words are complex, and filled with implicit elements that vary from group to group. It's like a varying collective code, and we don't all use the same one everywhere. as modern communications puts us more and more in front of people from other backgrounds, we have to get more and more cautious about différences of "codes", when we want to convey one meaning or cone concept. Things get a bit more complicated and delicate, it's unavoidable. It's just how language works - it's far from being a uniform, static, thing, with univocal usages...