Bug 858383 - [Keyboard] Integrate the new keyboard manager with switch
and show layout list functions in Keyboard app.
 1. Modify keyboard manifest to expose entry points as input methods.
 2. Modify keyboard init logic to interact with new keyboard manager.
 3. Make use of inputContext in keyboard app.
 4. Bug 885692 - To integrate with the new keyboard switching API. for keyboard app
 5. Bug 899073 - inputContext.geText() whould return Promise
Bug 856910 - Add MVVM pattern in settings app
Bug 856910, Bug 893557 -
1. Add Observable, ObservableArray, and ListView to Utils.
2. Add unit testing.
3. Implement the keyboard panel based on the UX spec.
Bug 906096 - Add some Gaia workaround to ensure the new IME framework continues to work in Firefox Nightly