Add ScannerTask, ScannerGlobal, ImportFilesTask and RecursiveScanDirectoryTask.
Parallelize the recursive scan step of the library scanner.

Uses 10 threads currently.
Add benchmark TODO.
Address review comments.
Add EffectChainSlot parameter accessor.
Add makeEmptyChain helper to EffectRack.
Force update effect to match QuickEffectRack superknob on effect load.

Related to Bug #1395288. This at least fixes the issue where the
superknob appears to be broken after the effect is loaded. We don't have
a way to set the superknob to the effect's "default" value
currently.
LateNight: Redo mixer to use new EQ parameter bindings.

Lots of painful layout work too.
make rate sliders smaller
LateNight: Save some vertical space by making twirl-downs just buttons.

Also make library hideable
LateNight:  Tried to make a Big Library button.

I can't get it to also hide the effects and samplers, so it's not quite right
Big Library button -- but it defaults the wrong way
Trying to make library not be big by default.
LateNight: big library setting isn't getting persisted, but it's fine for now
LateNight: Remove the word "stacked" from the title
Fix SkinContext test.
Fix BeatMap::scale() -- which was totally broken.

Add tests for BeatGrid::scale() and BeatMap::scale(). Potentially a fix
for Bug #1341181.
Test another scale factor in BeatMap::scale().
Use a single scanner thread to start.
Merge pull request #382 from rryan/scanner

Parallelize recursive scan phase of the library scanner.