It is quite simple to utilize the random spawning. You simply need to know the variaitons of spawns for the single spawn location. And levels can be random as well. Just create the individual npcs and then when you assign the spawn group for a location, add all the npc's you wish to possibly appear there and the chance of which an npc is likely to pop. This is the system I use for my still unreleased DB. It adds more random elements to the game, thus making it more interesting. I don't like knowing that the exact same spawn will appear in the same location every time.

Play with it a bit. You'll like it.