This is something I have learned from the elder scrolls (I am sure for Morrowind, not so sure about the rest): Please give every char a name, not just commoner, merchant or noble. In most games I press tab and I only talk to chars with a name because only they are relevant for quests. I think it feels immersion breaking if only 10% of the people have normal names while the rest had names that just describe their job or status. In TES only 10% of the people had a quest for you too while the rest said some usual lines, but you did not know until you talked to them. In Morrowind even normal bandits in a dungeon had names and when fighting them I was thinking if I could have talked to them if I did things different before. Yes, this does make it harder to find out who has a quest for you, but Morrowind was on of the most immersive game worlds ever, even if the gameplay was very repetitive (walk a lot, click things to death, jump and run like crazy just to increase your skill)
Honest to death: this is the ONLY kind of hand-holding that I want in my RPGs. I know this is a quite immersion-breaking feature, but if most of the characters in the game just tell me generic stuff, I want to know up front which characters don't (this saves me a HUGE amount of time. Hours of pointless clicking that doesn't add ANYTHING to the gameplay or to the story).
Of course, they could name all the characters and use a different font (or color, of whatever) in order to highlight the relevant ones. And of course, if every character in the game has something interesting to say, there's no need to name only a handful of them. But as long as generic characters are in the game, generic names are a useful tool for the player.