Add audio buffering, use GL graphics

- Add buffering to the audio to avoid underrun
  and glitches. We only store 8 frames to minimize
  the delay as much as possible, and drop frames if
  we're not fast enough.
- Rendering is now done through a QGraphicsView, with
  an OpenGL context. This makes rendering MUCH faster.