Persistence support for multiple guard selections in GuardMgr
In C tor, there can be more than one instance of the guard state, depending on whether bridges are used, and depending on whether a "very restrictive" filter is in place.
Right now, Arti has no support for bridges or nontrivial filters, so there's only one guard sample. But for future-proofing, we should adjust the persistent state stored by the guard manager code so that it allows more than one.
So instead of storing a single GuardSet persistently, I'd like to store a map from names to GuardSets. Ideally I'd like to do this without much copying on storage.