Move warning messages to lib/warning_messages.json

For the sake of refactoring and cleaner code, I moved warning messages to `lib/warning_messages.json`.

I also want to implement 'suppress' field support so users can suppress certain warning messages. In order to do so, warning messages must have a name. This commit gives (hopefully) self-describing names to warning messages.