Add failing test case for min_els, max_els guarantee
Fix scale_down so it adjusts min_els.

What was happening is sometimes max_els will get scaled down smaller than
min_els--which is fine--without correspondingly adjusting min_els--which
is not.  Easy fix.
Per @danielmewes, instead make new_max_els at least min_els.
Add test for when user is a dork and sets min_els > max_els
Clamp min_els to max_els to prevent user dorkage from crashing server