tons of work. added id to queues, moved tons of code out of track_wave and into widget so that track_wave only talks to the widget and the wave, moved all wave handlers into track_wave and out of widget