[keyboardlayouts] change from named layout to a locale+variant system

This change keyboard layouts from using names by conversions to using locale and variant name.

Allows to:
1. In the future, tie keyboard layout to other locale setting.
2. Display a shorter name in the keyboard dialog. Currently kept unchanged, but it's very easy to change to a lang code (or flag like the original PR) now that display name is decoupled.
Is it possible to get the localized name language code? Apparently it was decided it should be English though, so it wouldn't make much sense to make it RTL.