Disposes synchronously, then awaits all registered asynchronous cleanup.
Future<void> disposeAsync({bool purgeZeroize = false}) { dispose(purgeZeroize: purgeZeroize); return _cleanupFuture; }