My pydoctor tool (google for it...) does some of this, but hardly all of it. It's mainly targeted at documenting twisted so far, and you can see its documentation for that at:
It works by analyzing a bunch of modules or packages into this fairly large ball of information called a "System" (which can be pickled) and then working over that to produce HTML. It's at least somewhat pluggable. It supports epytext (epydoc's markup system) in docstrings, and you can use that to link to stuff reasonably freely.
I hadn't thought about integrating it into distutils before, that's quite a neat idea.