Enhance TelephonyRcsService to only create needed features

1) When determining the features that should be added to an
RcsFeatureContainer, take into account that subscriptions
CarrierConfig. This will stop unnecessary polling for the
RcsFeature for subscriptions that are not configured to support
RCS in the first place.

2) Fix some of the logging

Bug: 149100088
Test: atest TeleServiceTests
Change-Id: Ieaa23ba002528c75b87af961f5af534b6589a130
diff --git a/src/com/android/phone/ImsRcsController.java b/src/com/android/phone/ImsRcsController.java
index 6b1b5e3..3ea8df2 100644
--- a/src/com/android/phone/ImsRcsController.java
+++ b/src/com/android/phone/ImsRcsController.java
@@ -361,8 +361,8 @@
         int slotId = phone.getPhoneId();
         RcsFeatureController c = mRcsService.getFeatureController(slotId);
         if (c == null) {
-            throw new ServiceSpecificException(ImsException.CODE_ERROR_SERVICE_UNAVAILABLE,
-                    "Cannot find RcsFeatureController instance for sub: " + subId);
+            throw new ServiceSpecificException(ImsException.CODE_ERROR_UNSUPPORTED_OPERATION,
+                    "The requested operation is not supported for subId " + subId);
         }
         return c;
     }