Make IMMS#mImeDrawsImeNavBarRes multi-user aware

This CL reworks how a dynamic resource overlay

  com.android.internal.R.bool.config_imeDrawsImeNavBar

is being accessed and monitord in IMMS [1][2][3][4].

Overall the observable behavior should remain unchanged, but from the
implementation viewpoint there are many improvements in this CL.

 * takes advantage of UserData object.
 * no longer depends on SystemServerInitThreadPool
   and ConcurrentUtils.waitForFutureNoInterrupt().
 * registers the broadcast receiver only once.

 [1]: I3e7e1f83554444131e2765dc159617bb9e2337c7
      ff7b453ca8e23b4ef75ba2c3f5becaf511cb07d3
 [2]: Id0cfa44cce5de515dc5d28254e1d41bdfc01e201
      177e4aafdb33ec0e4b9172a16a07a34dc6420e36
 [3]: Id3d6a71d8ba1bfa49131350b68aa8d3424eca381
      f93769b1ae390d4dc38bccb01627f5f7189cd075
 [4]: I20f6be5d676b9e61ea3077aeaa2eadc5dbbdcd0c
      53706a2899887c1a08876d54ae230e1ceff20980

Bug: 305849394
Bug: 343601565
Fix: 225366708
Fix: 345519864
Test: presubmit
Flag: EXEMPT refactor
Change-Id: Icf49020eda790629dd871b9f7365e7015dd6931b
6 files changed