Added concept of tags. The TagSetProvider which gets injected/stored in the NotifyIconViewModel refers to the "currently selected" tag(s).

When a new instance of the TimerHistoryItem class gets created, this current tag state will be applied to it. Note that a new TimerHistoryItem instance is created every time you start (or restart) the stopwatch.

The next job should be to create a user interface to allow the user to change this current tag state. When the user does, behind the scenes if the timer is running, it will be stopped and restarted to implicitly create a new TimerHistoryItem entry - which'll then in the same way as described above, use the current tag state which the user just set.

Related to ticket #3.