I agree 100% with stethnorun and Baleurion. The current random name generator is pretty lame.
There is an old Games workshop stategy game, Mighty Empires I think was the name, it used multiple tables to product names, so if you were creating a city you would roll first to find out how many elements the name contained. Different races had different maximum numbers of elements. Then you would roll again on that races element chart to create the name.
For example, you find a dwarf city, you would make your first roll to find the number of elements:
Roll #of Elements
1-2 1 element
3-6 2 elements
Then you roll however many times you need to on the elements table to find the actual elements:
Roll Element1 Element2
1 Askul -a-grim
2 Brok -a-karak
3 Dun athol
4 Dur ban
5 Kar krag
6 Thor ungol
So if you roll a 4 the name is two elements; you then roll a 4 and the first element is Dur; finally you roll a 2 and the second element is -a-karak; name = Dun-a-karak.
If you were rolling on an orc city it might be more likely to select only 1 element, and the orc element table would be different, so the names for an orc city would be something like: Bog or Naz for single element names, or Bogrot or Bogbad for two element names.
Maybe elven cities even had 3 elements possible.
A system like this would still give a great degree of randomness, while also letting each faction create city (and hero) names that are specific to each faction, and eliminate the unpronouncable random names.
Anyway, just a suggestion...