Refactor PropertyInvalidatedCache

Refactor PropertyInvalidatedCache in preparation for putting nonces in
shared memory.  The refactoring is as follows:

 1. A NonceHandler is created for every property key.  Handles are
    saved in a global map, indexed by the property name.  Statistics
    associated with the key are moved into the NonceHandler.

 2. The invalidate, cork, and disable operations are now methods on
    the NonceHandler.

 3. Testing is accomplished by using a NonceHandler that does not
    write to system properties.  Two test APIs are obsolete but
    because they are in the API list, they will be updated in a later
    CL.  Unit tests have been updated; CTS tests will be updated
    later, although they pass.

This CL adds a new unit test that verifies the operation of the test
support routines, which are used by clients such as bluetooth and
telephony.

Flag: EXEMPT refactor
Bug: 360897450
Test: atest
 * FrameworksCoreTests:PropertyInvalidatedCacheTests
 * FrameworksCoreTests:IpcDataCacheTest
 * CtsOsTestCases:IpcDataCacheTest
 * ServiceBluetoothTests
Change-Id: I86c084e9aff0f7d26f30d77b79f723e80650213c
3 files changed