Here are a few ideas for coming up with meaningful, original names for your characters...
Look up baby name meaningsIt's very simple to find a baby naming site, enter in a leading trait of your character and then browse the list to see if any of them suit. Of course, this tends to work more for goodies than baddies, as names with negative connotations are much more rare. Can't think why.
Foreign wordsWhy not enter some of the character traits into Google translate and see what some foreign words look like as names. You may need to try a few synonyms to get the right thing, and obviously the language itself needs to sound appropriate.
Scientific namesLike the infamous Katniss, names of plants and even rare animals can bring depth and meaning to your character and even add layers to their history.
MapsMaps are full of weird and wonderful names, especially the small places around the outskirts of the cities or deep into the counrtyside.
How do you choose names for your characters? Do you think it's important to get the right name, or that it doesn't really matter? Do you have any other ideas for discovering interesting names?