Synchronous audio focus behavior with external focus policy

This patch preserves the synchronous nature of audio focus requests,
  even when an external focus policy is installed.
When focus is requested, the request is blocked on
  the client-side, while AudioService informs the external
  policy of the request, and until the ext policy responds
  with the focus request result for this client, or
  it times out.
The new AudioPolicy API is the call for the external policy
  to send the focus request result.

Bug: 63906162
Test: gts-tradefed run gts -m GtsGmscoreHostTestCases -t 'com.google.android.gts.audio.AudioHostTest#testFocusPolicy'

Change-Id: I4671517f7f00eaaed8748bd4013b7d20be3085fb
9 files changed