Basic framework support to test Avrcp/A2dp profiles.

Background and a design doc for the framework can be found in b/29097732

Add a MediaBrowserService to the test app for intercepting Media Keys.
Add a BluetoothMediaFacade for bluetooth media related test cases
Added an API to ConnectionFacade to disconnect on a specific list of profiles. Also re-factored some code here to share code.

Bug:  29097732, 28913426, 29100401
Change-Id: I1d172a1de342f19545f0a46f025effa7daf5ad4a
(cherry picked from commit 901bd7709544583e9497dc970105093180a5debf)
diff --git a/ScriptingLayerForAndroid/AndroidManifest.xml b/ScriptingLayerForAndroid/AndroidManifest.xml
index bce4fc7..eef182f 100644
--- a/ScriptingLayerForAndroid/AndroidManifest.xml
+++ b/ScriptingLayerForAndroid/AndroidManifest.xml
@@ -194,6 +194,11 @@
                 <action android:name="com.googlecode.android_scripting.service.FacadeService.ACTION_BIND" />
             </intent-filter>
         </service>
+        <service android:name=".facade.bluetooth.BluetoothAvrcpMediaBrowserService">
+            <intent-filter>
+                <action android:name="android.media.browse.MediaBrowserService"/>
+            </intent-filter>
+        </service>
         <activity android:name=".activity.InterpreterManager" android:launchMode="singleTask" android:configChanges="keyboardHidden|orientation" />
         <activity android:name=".activity.LogcatViewer" android:launchMode="singleTask" android:configChanges="keyboardHidden|orientation" />
         <activity android:name=".activity.ScriptsLiveFolder" android:label="Scripts" android:icon="@drawable/live_folder" android:configChanges="keyboardHidden|orientation">