git tag support

First: I don't suggest that you accept this pull request as it is today. I'm opening it just to start the discussion, and to get feedback.


This is a great tool to learn branching. I've recommended it to some people now.

But it has a limitation, it only handles branching, but it does it great!

To build a working branching structure,which can represent releases, and understand why only merge in certain ways, it's necessary to understand tags too, and git describe, to show tag, patch level and commit hash, and see how that propagates down the tree.

This pull request implements rudimentary "git tag" support, but lacks "git describe" yet. (I intend to fix that).

It does however break detecting if a user has reached the goal, so don't merge for now.

But I'm interested in feedback?