Visualization: label interfaces

Adds "<<interface>>" above the class name in the visualization.

Also fixes a bug where names printed incorrectly for the visitor
pattern.