Refactor Visualizer

Refactored so that the visuals are seperate objects.
This allows it to be a little easier to edit and add new ones.  I want
to add some new ones for debugging purposes and later just for fun ;).
You can either use register after Visualizer has been init'd.  Or you
can push your visuals on to Visualizer.visuals in your code before its
init'd and they will be init'd when winamp starts.  This allows you to
easily add new ones before winamp starts.