Use `Arc<[Arc<BridgeConfig>]>` in configuration, GuardMgr, etc.
We frequently want to pass around an Arc<BridgeConfig>
, such as when we are making a BridgeRelay
, or when we're telling the BridgeDescProvider
what bridge we want.
But right now, GuardMgrConfig
(and hence a lot of other stuff) give us a Vec<BridgeConfig>
, which GuardMgr turns into an Arc<[BridgeConfig]>
. We should introduce another internal Arc
.
See discussion at !847 (comment 2853577)