Split custom_badges_really_ordered

Fixes #545 by splitting custom_badges_really_ordered into
add_custom_badges and shift_custom_badges.
Remove add_custom_badges

add_custom_badges turned out to be unnecessary.
Adds range check

Adds a safety check to make sure no one gets assigned a badge out of
range. They would instead get assigned attendee badge 0, so that the
badge can be fixed later.
Merge pull request #668 from magfest/add_shift_option

Adds shift_custom_badges option