rbd-mirror: fix potential infinite loop when formatting status message
The improvements include:
- tag_tid values should always be increasing, so loop only if
master.tag_tid > mirror_tag_tid in calculate_behind_master_or_send_update;
- in send_update_tag_cache don't refetch a tag if it is already in the
cache;
- make fake tags with tag_data.predecessor.tag_tid set to zero;
- make sure the new tag is inserted to the cache if an old entry
with this id happens to exist.