Bug 856910, Bug 893557 - Keyboard panel to support 3rd keyboard
 1. Add Observable, ObservableArray, and ListView to Utils.
 2. Add unit testing.
 3. Implement the keyboard panel based on the UX spec.