Initial draft of new MediaRouter APIs.

This patch introduces basic infrastructure for the new MediaRouter
API.  The code is fully documented but incompletely implemented.
It is being submitted not to facilitate API reviews.

MediaRouter is a new class that applications used to discovery,
connect to, and control media devices as represented by media
destinations and their routes.  Routes may offer a variety of
capabilities.  This new class is a much more powerful replacement
for the existing MediaRouter.

MediaRouteService is a base class for creating media route services
which third-parties can implement to make routes available to
applications.  It is analoguous to the MediaRouteProvider
infrastructure of the old media router support library but it
is designed to be integrated into the framework and enable a
variety of new usages such as remote display projection.

Stay tuned for more...

Change-Id: I2c7c6013d9f751d71e83697e7fc9e49bf7751fef
diff --git a/Android.mk b/Android.mk
index 0bc956d..96b2b17 100644
--- a/Android.mk
+++ b/Android.mk
@@ -320,6 +320,12 @@
 	media/java/android/media/IRemoteVolumeObserver.aidl \
 	media/java/android/media/IRingtonePlayer.aidl \
 	media/java/android/media/IVolumeController.aidl \
+	media/java/android/media/routing/IMediaRouteService.aidl \
+	media/java/android/media/routing/IMediaRouteClientCallback.aidl \
+	media/java/android/media/routing/IMediaRouter.aidl \
+	media/java/android/media/routing/IMediaRouterDelegate.aidl \
+	media/java/android/media/routing/IMediaRouterRoutingCallback.aidl \
+	media/java/android/media/routing/IMediaRouterStateCallback.aidl \
 	media/java/android/media/session/IActiveSessionsListener.aidl \
 	media/java/android/media/session/ISessionController.aidl \
 	media/java/android/media/session/ISessionControllerCallback.aidl \
@@ -524,6 +530,7 @@
 	frameworks/base/location/java/com/android/internal/location/ProviderRequest.aidl \
 	frameworks/base/media/java/android/media/MediaMetadata.aidl \
 	frameworks/base/media/java/android/media/Rating.aidl \
+	frameworks/base/media/java/android/media/routing/MediaRouteSelector.aidl \
 	frameworks/base/media/java/android/media/session/MediaSession.aidl \
 	frameworks/base/media/java/android/media/session/PlaybackState.aidl \
 	frameworks/base/telephony/java/android/telephony/ServiceState.aidl \