Introduce TreeDefinition.From(Commit)
Introduce repo.Refs.ReachableFrom()
Introduce repo.Refs.RewriteHistory()