Fix the check-in generated commits to include only recent messages

Right now, if the common ancestor is on a different branch, than the one you check-in, the generated check-in message includes irrelevant messages.

This happens since this is the code that generates commit messages:

```
            foreach (LibGit2Sharp.Commit comm in
                _repository.Commits.QueryBy(new LibGit2Sharp.Filter { Since = head, Until = parentCommitish }))
```

When the until code is on a different branch, there is, in effect, no stopping condition.

I fixed the issue by limiting the commit with the message to always have a newer date than the ancestor commit.