context: remove unused filectx.ancestor
ancestor: remove unused genericancestor
backout: don't limit heritage check to a single ancestor

This do probably not make any real difference but is slightly more correct and
we would like to get rid of changelog.ancestor.
commit: use revlog.commonancestors instead of .ancestor

This do probably not make any real difference but is slightly more correct and
we would like to get rid of flog.ancestor.
transplant: use context ancestor instead of changelog ancestor

We want to move in this direction. ctx.ancestor is in a better position for
handling a situation with multiple ancestors.
copies: remove _checkcopies wrapper - it does no good

mergecopies might be doomed but it is not dead yet ...
copies: guard debug section with ui.debugflag
revlog: use context ancestor instead of changelog ancestor

We want to move in this direction.
color: extract method for determining a valid effect

This patch is just setup work so that we can reduce code duplication and have
one place to define a valid effect.
color: fallback and test label as an effect

With this changeset, we can now send a color name directly to the label
function, e.g.

$ hg log -r . -T "{label('red', node|short)}\n"