Use the new store model to save the tasks

The tree needs a new column to track the task id. This column will be hide
from the user.

As store is the StorageSimpleText class used. The Load() and Save() functions
use the IStorage-interface now. When a running task is stopped the storage
gets the chance to save the time period by calling it's Update() function.
Adding and deleting tasks invoke the corresponding functions in the store as
well.

Signed-off-by: Frank Bergmann <github@frajasalo.de>
A (base) class for options in the storage classes

Signed-off-by: Frank Bergmann <github@frajasalo.de>
Use the new options class as a base class for the storage interface class

Signed-off-by: Frank Bergmann <github@frajasalo.de>
Some unit tests for the storage options class

Signed-off-by: Frank Bergmann <github@frajasalo.de>
Use new option functionality for filename in StorageSimpleText

Signed-off-by: Frank Bergmann <github@frajasalo.de>
Update project file for StorageSimpleText unit test project

Signed-off-by: Frank Bergmann <github@frajasalo.de>