winery: try harder to record shards as mapped
When both hosts try to record the shard as mapped read-only at the same time, one of them can fail. This situation cannot be recovered from automatically.
To recover from the situation, first, add a retry to the record_shard_mapped call, which should make it succeed from within the main loop; second, when initializing the list of shards, if the shard is mapped read-only and its state is "PACKED" (which should be pretty rare), then mark it as mapped.