Good point. A couple famous quotes that speak to this[0]:
Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious.
-- Fred Brooks, The Mythical Man-Month
Bad programmers worry about the code. Good programmers worry about data structures and their relationships.
-- Linus Torvalds
If I can't use a debugger (i.e. my initial assumption fails), I usually run for the hills...
A google maps zoom system for code sounds awesome, although I have no idea how that might work.
The zooming functionality you're thinking about probably wouldn't be very practical. (Zooming in down to opcode or out to high level framework calls.)
But simply being able to inspect definition inline would do.
Code is just one level of abstraction and one way of seeing things. We should have multiple ways of "reading" a system depending on what level we want to understand it. No, I don't think that rushed, out of date "system documentation" you wrote will do. I still think this is not solved in a satisfying way. We could find inspiration from things that works well, just imagine how google maps lets you look at the world at many different levels, from continents down to street level. Also it provides different views of each level, street maps are useful for tourists, terrain maps for hikers and satellite images for someone who want to study vegetation. How you will "read" a system depends on what you are trying to understand.