Some of the above writers are overreacting to the word "Gypsy." Sure it's etymologically and ethnologically inaccurate, but names for ethnic groups often are. How about "American Indian?"
Actually, when speaking English, many Roma themselves seem to have little or no problem referring to themselves as "Gypsies." Likewise, ask an American Indian what he/she would like to be called and you may be surprised to find that most of them would prefer "Indian" over "Native American," "American Aborigine," or whatever. I think some well-intended non-Indians and non-Gypsies just decided for themselves that these names are offensive, without even actually asking the effected peoples themselves.
Besides, you should know that the Romany word used for non-Roma, Gadjo, is unquestionably of a pejorative connotation (in contrast to, say, "Gentile"), reflecting the fact that in traditional Roma culture the Gadjo are considered unclean (which is exactly what the word means). Furthermore, though it may not be politically correct to say so, the fact of the matter is that in the traditional culture the Gadjo are to be strictly avoided, unless they can somehow be exploited for the benefit of the Roma. Do some serious research into Romany culture before you summarily doubt this.
So don't be so uptight. "Gypsy," when you get right down to it, is really just the English Language name for a Roma person, just as "Niemiec," meaning one who just doesn't understand or get it (and is by inference an outsider) is the word in Slavic languages for a German, and just as the word "Slav" is the source of the word for slave in most western languages. I mean, how politically incorrect is that?