Translate all messages.

Also, factorise & simplify code.
Also, follow coding style.
Also, follow naming conventions.
Also, avoid calling dict() for static key sets.
Also, add comments about bad code kept for backward compatibility.
Also, add comments about incorrect grammar - also kept for backward
compatibility.