Finished implementing the interface. It could prbably still use some
fancy-ing up, but the basic structure is there and should be sound. It
allows for a change of the song, and of the visualization. We'll just
have to manually add in whatever visualizations we create into the
UpdateVisualization method, and we should be good to go!