Added `_shards` header to all write responses.

The header indicates to how many shard copies (primary and replicas shards) a write was supposed to go to, to how many shard copies to write succeeded and potentially captures shard failures if writing into a replica shard fails.

For async writes it also includes the number of shards a write is still pending.
maybe make this a note? i.e., pro tip:  replica shards may not all be started when an indexing operation successfully returns (by default, we require a quorum). In that case, `total` will be equal to the total shards based on the index replica settings. `successful` will be equal to the number of shard started (primary plus replicas). As there were no failures, the `failures` count will be 0.