Restore alphabetic ordering of checkers
Add tests for JSON
Fix checker selection for checkers without modes

For checkers without modes :modes is nil, however `(symbolp nil)` holds,
making `flycheck-checker-modes` return `(nil)` instead of `nil` which
caused `flycheck-check-modes` to falsely return nil if the checker had
no modes.
Merge branch 'master' into unit-tests

* master:
  Fix checker selection for checkers without modes
  Restore alphabetic ordering of checkers