Another option(not sure if you want to spend money or not) might be to use Fractal Mapper. They don't have a lot of symbols, but what it DOES to well is zoom. It has this great feature where you can set zoom levels, so that as you zoom in or out, items you "tag" appear or disappear. So.. for example... if you are looking at a regional map, you would see a label for a town. As you zoom in, the label would of course get bigger right? Well, with Fractal Mapper, you could(if you wanted to do the work) make it so that after a certain zoom level, the "highest" level label would turn invisible and be replaced by a smaller one. Do this a few times with different elements, and you could have a city look like a dot on a map, and then you could zoom in down to the individual house level (as noted above, ViewingDale does something similar, but I don't know the details).

Alternately, both Fractal Mapper and Campaign Cartographer offer map hot links. Basically you could define a section of the main map and when clicked upon, it would load the more detailed map of that area. And of course, these are recursive, so you could have City->Quarter->Street Block->House and then within the house if it had stairs, you could link the stairs to each other so that show the up/downstairs as appropriate.