Visualizer cleanup

This is some long overdue Visualizer clean up and simplification.  After we introduced `DataSourceDisplay`, a lot of the functions on the visualizers became unnecessary.  This removes `setDynamicObjectCollection`, `getDynamicObjectCollection`, `getScene`, and `removeAllPrimitives` from all visualizers and defines a simple `Visualizer` base interface for the documentation.  I also cleaned up Visualizer related documentation.  There are no real functional changes to any of this code; it's just a stepping stone to clean everything up before rewriting/optimizing our older visualizers.