6/n: Update UserAwareBiometricScheduler

1) Add and expose "onUserStopped", and invoke it from scheduler owners.
   Originally we try to send the callback via
   scheduler.getCurrentClient().onUserStopped(), but since the user-aware
   scheduler does not keep this work in the queue (can revisit this
   later), it needs to receive the callback some other way.
2) Does not schedule another "stopUserClient" if one is already there.
   This avoid unnecessary stopUserClients from being added when one
   is already running but another operation is added to the queue.

Test: atest com.android.server.biometrics
Test: atest CtsBiometricsTestCases
Test: Enroll, add new user, switch user, enroll
Bug: 181984005
Change-Id: I86922b83fa993c3ceae81acc2c31999d268014c9
3 files changed