#480: badge change admin form was broken

This was an actual bug; we were referring to ``badge_num`` rather than ``new_badge_num``.

This was a function I refactored after moving to SQLAlchemy and I actually have unit tests for it, but didn't test passing strings.