badge consistency check - verifies that badges are in the right order/etc

adds a set of checks that can be run either from utility.py or (in the future) via periodic task

I will use this check to verify that my badge fixup script change works correctly.

Eli can you put some eyes on this and let me know if I'm missing any weird edge cases with the checks or not?

\m/
-Dom
I tried that and it didn't work, but now I tried it again and it worked. WEIRD. 

Uploading new version with your suggestions implemented. BOOM