Add a very basic visual test

It generates a report and asks to manually check that links/layout are correct.
Remove circular subroutine references in the report object

Replace the object reference in the caller/callee with the subroutine identifier.

Avoids the need for weak references, and simplifies the code required to handle
eval merging.