[login_manager] Fix thread-safety issues at shutdown
I was persisting the signed settings store to disk from the main thread at shutdown.
In general, this work is only supposed to be done from the background thread.
In practice, this was probably fine. In unit tests, it was possible that I could call
store_->Persist() on one thread while I was already doing it on another thread. Boo me!