Change playposition range back to 0-1. Fixes Bug #1201972.
Don't automatically switch to the setlog playlist on any change.
Fix some compiler warnings.
Add a timer for swapping.
Improve performance for background rendering if no image is provided.

Instead of rendering an image, just call fillRect with the background color.
Add thread names for CachingReaderWorkers.
Fix for hasVinylControl not performing the check correctly.
In other news, default arguments considered harmful.
Merge pull request #220 from rryan/playposition-range

Change playposition range back to 0-1. Fixes Bug #1201972.
Only redraw timerListener widgets when waveform updates if they have changed state since the last paint.
Support resizing WSliderComposed.
better state-change detection for the listener widgets
Eliminate unnecessary widget renders from control changes.

Instead of re-rendering on every control change (via
WWidget::onConnectedControlChanged), check for changes in what we would render
first.

Updated: WDisplay, WKnob, WKnobComposed, WSliderComposed, WStatusLight
Left unchanged: WWaveformViewer, WPushButton, WOverview, WVuMeter
Merge pull request #221 from ywwg/repaint-fixes

Only redraw timerListener widgets when waveform updates if they have cha...
Merge pull request #222 from rryan/wwidget-update

Eliminate unnecessary widget renders from control changes.
Fix unused warning.
Fix VU meter no-op detection (it was skipping almost all legitimate updates).
Really, actually fix vumeters
Don't use mod operator in shaders for compatibility
mod works as a function, actually.