I'm a big fan of Tropico and DF, so it's no surprise where I got this idea from.
One of the things that really gets me about this game is the seemingly random manner in which immigrants arrive. I suppose that this does provide an organic feel on some level, but being that it seems to pay no heed to the 'demands' of the resident economy, it just feels frustrating at times. Wouldn't a skilled weaponsmith be dying to move to that up and coming Hamlet after it's established it's necessities so he can fill the gap and become a valued part of the community?
Of course, it would be less than totally entertaining if you could just get whatever dwarves you needed as you needed them. So, I thought up an idea for a bit of a compromise which would allow more goal oriented gameplay to creep it's way in without disrupting the organic feel of the game.
Perhaps, when the trade advisors visit from neighboring regions, you can request workers from them. However, you don't get the workers for free, and you don't trade for them either. My idea was that perhaps you could tell the advisor that you desired a particular dwarf, and then you would have a new set of criteria to fill very similar to what the nobles have. The metalsmith that you are 'putting out an ad for' would only want to come if there was a proper incentive, like perhaps a decent bedroom, two chests, and a weapon rack etc. When you fulfilled these needs, the new worker would arrive and move into his new abode. In order to prevent cheating and keep it realistic, you could make the dwarf tantrum or possibly even go berserk(depending on his demeanor) if you decided to deprive him of what he came for.