Add support for client side SSL certificates

This introduces the ability for clients (i.e. the exchange service) to
register "special connection types" that use a client certificate stored
in the system keystore. The alias is encoded into the URI scheme for
those clients, and the socket factory used for those connections will
use the approprate KeyManager.

Lots of TODO's, including bubbling a lot of this up to the higher level
and wiring the UI to actually set the alias in the HostAuth table.

Change-Id: If5e1901c5b58731fdabd3e6b6da7198134b512d2
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index c6ae893..021a7f1 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -70,6 +70,9 @@
     <uses-permission
         android:name="com.android.email.permission.READ_ATTACHMENT"/>
 
+    <uses-permission
+        android:name="android.permission.USE_CREDENTIALS"/>
+
     <!-- Grant permission to system apps to access provider (see provider below) -->
     <permission
         android:name="com.android.email.permission.ACCESS_PROVIDER"