Catch2 doesn't report some errors in test, and some test are
disabled on porpoise this commit adds set of scripts and changes to CI
that will clearly mark what test haven't been run.
Changed keyboard input language parser to parse JSON files.
Removed all KPROF files and added JSON.
Added unit tests for new parser.
Modified document about adding languages.