Implement VisualVoicemailService cascading.

This CL determines which VisualVoicemailService should be active.
The order is:

1. Current default dialer
The dialer might disable itself when a carrier VVM package is
installed.

2. The carrier packages
Designated with CarrierConfig using KEY_CARRIER_VVM_PACKAGE_NAME_STRING.
This value is used before solely to disable the system client.
KEY_CARRIER_VVM_PACKAGE_NAME_STRING_ARRAY should be added to allow
multiple clients.

3. The system package.
A device specific package override-able with
R.string.system_visual_voicemail_client

4. The system dialer.

Bug: 34132028
Bug: 32414216
Change-Id: Ifa6d0bbb3033a14757ab99226f28aca245848c0f
Fixes: 34132028
Test: manual test using the dialer and the system package.
diff --git a/res/values/config.xml b/res/values/config.xml
index 1f23c6b..279d274 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -207,6 +207,10 @@
     <!-- Flag indicating whether to allow visual voicemail if available on the device.[DO NOT TRANSLATE] -->
     <bool name="allow_visual_voicemail">true</bool>
 
+    <!-- The package to handle visual voicemail if the default dialer or the package
+    CarrierConfigManager.KEY_CARRIER_VVM_PACKAGE_NAME_STRING does not handle it -->
+    <string name="system_visual_voicemail_client"></string>
+
     <!-- Flag to enable VVM3 visual voicemail. VVM3 is used by Verizon Wireless. -->
     <bool name="vvm3_enabled">false</bool>