dagop: yield intro filectx by filectxancestors()
This is the convention of dagop.*ancestors() functions.
dagop: copy basefilectx.ancestors() to free function
The primary goal of this series is to make follow() support multiple start
revisions.
dagop.filectxancestors() will be extended to take multiple filectxs.
basefilectx.ancestors() is not forwarded to this function because doing that
would resurrect the performance issue fixed by
24b57c3899f8.