rust-revlog: make `IndexEntryBuilder` build a whole entry
The `IndexEntryBuilder` we have in tests only built part of a revlog
entry before this patch. It's more useful if it can build a full
entry. As part of fixing that, I also added a (non-test)
`IndexEntry::link_revision()`.
Differential Revision: https://phab.mercurial-scm.org/D12564
Ancestors of 5
4 2 0
Ancestors of 6 and 5
4 3 2 1 0
Ancestors of 5 and 4
4 2 0
Ancestors of 7, stop at 6
6
Ancestors of 7, including revs
7 6 5 4 3 2 1 0
Ancestors of 7, 5 and 3, including revs
7 6 5 4 3 2 1 0
Descendants of 5
7 8
Descendants of 5 and 3
6 7 8
Descendants of 5 and 4
5 7 8