Bug 913782 - [Keyboard] Build time default keyboard selection work for
3rd-party keyboard support.
 - make build/settings.js read the default keyboard layout config

 Bug 920431 - [keyboard] keyboard_layout.json should be customizable
   - Refine to make it adopt the config in distribution package
   - Add a separate build step for shared/ folder - shared-makefiles.
Bug 971473 - [System2] Instantiable CallForwarding

- update bootstrap_test
- add related tests for call_forwarding
- refactor call_forwarding
Merge pull request #16772 from EragonJ/bug-971473-bubble-tea

Bug 971473 - [System2] Instantiable CallForwarding
Merge pull request #16789 from RudyLu/keyboard/Bug920431_round2_toBubbleTea

Bug 913782 - [Keyboard] Build time default keyboard selection work for
r=yurenju