Moved 'git' dependency to real dependencies.

Since it is required for the core functionality.
Error cases for branch-off feature.

To emphasize correct usage, error cases were added to the spec.
Commits missing on successor branches feature.

To detect unmerged (bug) fixes, we regularly need to analyze differences
between a 'released' branch and the current upstream branch.

This feature collects all commits that are not merged into the upstream
branch from an other branch.

The current implementation will report commits that have been
cherry-picked, but not merged.
Rename Tracker spec.

The naming of the test was inconsistent, and I do not want the tests to
be tagged 'functional' anymore.