2/n: Multi-modal support for BiometricPrompt

Part 2 of decoupling BiometricDialog lifecycle from AuthenticationClient
lifecycle. This change introduces cookies which are used to keep track
of clients within BiometricService and <Biometric>Services. This allows

1) Much easier support for BiometricPrompt to authenticate using more than
   one modality
2) Much easier to support "continue" button on BiometricPrompt for passive
   modalities, which should be pressed before authentication continues

Bug: 111461540

Test: BiometricPromptDemo works, error messages are propagated to clients
Test: Keyguard/Settings smoke test
Test: ConfirmDeviceCredentials works

Change-Id: Iaa246488fb027c3397a3191841524b389145b281
17 files changed