Restore numGroup setting when overridden.

While I'm not fond of a global "number of groups" setting, if it is
set, but overridden with a specific list of callback functions, we
reset it back to its original value.
Add a "control group" feature

Instead of splitting the entire population into test groups, you can
create a testing pool of a particular size. The test groups will be
found from user keys in this pool, and the rest may form a "control"
group.

This allows you to have a two 5% test groups with a 90% control.
Each of these three groups can get a callback function.