Huge visualizer optimization.

Audio happens at 24hz, render() happens at 60fps; I smoothed visual
changes to correspond to the rate of audio data