Add some handy volume and orientation buttons to controller learning.
Add learning support for microphone ducking.
Support learning toggle recording, waveform zoom, and set internal sync master.
Turn BPM controls for decks and internal clock into potmeters (allowing out of range sets).

* Allows mapping of a knob to the provided BPM range (1-200).
* Creates _up/_down/_up_small/_down_small helper COs.
* Set step to 1 and small step to 0.1.
Support learning of deck BPM and internal clock BPM.
Merge pull request #194 from cardinot/Bug#1202417

#1202417 fixed - Customize left-click in library action
WSplitter: store sizes in a configkey
Do not fake a Return key press to expand/collapse a library sidebar item. Fixes Bug #582503.
WSplitter: differentiates error message
Add Marcos Cardinot to the credits.
Removed min max COs from EffectParameterSlot this is a redundant concept with the inter control solution. If we later have a usecase that a min or max value should be tweakable for a effect, this effect might handle it intern by a new dedicated parameter.
add pre-push script to build and run tests

this hook can be activated with
`ln -s ../../scripts/git-hooks/pre-push.sh .git/hooks/pre-push`

This way git will only push if the test-suite passes. Be aware that this
will trigger a build with `scons test=1 -j$NUM_CORES` each time you
push. Also I only tested this on linux.
add test_data dir to gitignore
WSplitter: pass pConfig in through the constructor
Fix effect tests. They broke after some control and behavior changes.
added getDefaultParameter to the script API
added controleffectknob.cpp
Revert "Fix effect tests. They broke after some control and behavior changes."

I accidentally committed a bunch of local changes.

This reverts commit 9e8575bd3fff1c9427d5f189683c3b57adc2ec0d.
Fix effects tests that broke after some control and behavior changes.
Add playlist and crate track counts and durations in the library sidebar.

Fixes Bug #991938 and Bug #1014951.