badge fixup code for fixing busted badge numbers

if badge numbers get out of consecutive sequences (like what happened for 8.5), this will re-assign all badges to fill in the gaps/etc
only use this as a weapon of last resort
also, added another check for duplicate badge numbers in the consistency check