Refactoring of VisualizerPlugin

Changed VisualizerPlugin class to use union and setdiff to remove
plugins. Additionally relocated event listener initialization code to
the ConnectGui function as is appropriate.