Print output of 'todo.sh do' command.
Add override which adds the creation date in case I forget...

... which is most of the time.
Add 'clean' subcommand to dep action.

Removes
* id tags which are no longer referred to;
* p tags whose id does not exist anymore in the file.

By the way, you can also use 'gc' instead of 'clean' if you're more
familiar with that.
Add license.
Change shebang to /usr/bin/env.
Restructuring date related functions a bit.

Add a function which subtracts two Time::Piece dates, have a function
which calculates the difference with respect to today and a function
which calculates based on a todo's due date.
Rename modifyTag to setTag.
Add convenience functions for setting the due and start date.
Add support for recurring tasks.

A recurring task is a task that returns after a certain time period
after the completion date. This is different from repeating, where you
can say that a task repeats every Monday.

Use the rec tag to indicate recurrence on your task. The value is a
numerical value suffixed either by d, w, m or y (days, weeks, months,
years respectively).

The do command completes the current task and inserts a new one with a
new due date (and if applicable, a new start date).

Example:

(B) Water flowers rec:1w due:2013-08-12
Set start and due attributes with new helper functions.

Actually I should get rid of these attributes and solely use the 'tags'
structure.
Make counter global, in case readTodos is called multiple times.