evolve: update the public divergence resolution logic to cover --continue case
To continue the interrupted evolve in case of public divergence:
we will have to store the node of that public cset which was in
content divergence with the other cset, so that we can perform the
phase divergence resolution between that public cset and a newnode
which is the result of content-divergence resolution.
Added tests reflect the behaviour this patch adds.
evolve: add logic to resolve content-divergence with a public cset
Public content-divergence is the divergence where a cset is content-divergent
with a public cset.
To solve public divergence:
1) perform content-divergent resolution
2) resultant node is phase divergent
3) perform phase divergence resolution
It is the intial logic to solve public divergence.
Next patches will be the covering the cases of:
1) relocation: when we need to relocate to node
2) continue: to add this resolution in case of --continue
3) the case when content-divergence resolution gives a result similar
to public cset.
Added test-evolve-public-content-divergent.t reflect the added behaviour.