I will agree that the character may not be a particular class, as written. Chaosmancer's barbarian, for example, is more knight than barbarian. But, since the knight is using all the barbarian features, mechanically he's a barbarian. For example:
CM: Hey, I have a homebrewed class for your campaign. Is that okay?
GM: Let me look at it first. This is just a barbarian. Do you have later ability changes in mind?
CM: Nope, happy with the official barbarian. Just thought, since he's not a tribal warrior, you might not approve, or want me to change the name of his class.
GM: So, you are actually looking for background approval. It's good. But please write barbarian under class, so there is no confusion.
Homebrew is changing actual rules and mechanics, or adding new feats and races. It's not just narrative fluff to explain your campaign world, which is just D&D "out of the box." The flavour text provides interest, colour and examples. It's to also help put us in the mood, just like the art does. It's not there as rules. So if a player wants a city druid, focusing on rats, pigeons, domestic animals and maybe oozes, that's cool. That's a nice change from the standard druid. And unless, some actual abilities are altered to make the class more urban, it's not homebrew. It's not a new class, it's just background. And background fluff is assumed to be highly mutable, and full of creativity. RPGers are an imaginative bunch, even when not changing mechanics.