Support device role for capture preset.

Support set/add/remove/clear/get device role for capture preset. The
device role can be DEVICE_ROLE_PREFERRED and DEVICE_ROLE_DISABLED. The
preferred and disabled devices can be multiple devices. In this CL,
only cache preferred devices in engine but not use for audio routing.

Bug: 160352965
Test: atest AudioServiceHostTest
Test: atest audiopolicy_tests
Change-Id: Ib16ab2ec82bc288421c20df9470ac3835c71b1e8
16 files changed