Bug 858383 - [Keyboard] Integrate the new keyboard manager with switch and show layout list functions in Keyboard app.

This is the pull request to add 3rdParty keyboard support.
Please be informed this change would need Gecko m-c to test with.

For this bug, please help review 92235a8ce3ea4a4902bb11871ba485158b8e486b only, the other 2 commits will be reviewed by other module peers/owners.