Many Small Changes

(1) Updated `./readme.md`.
(2) In `src/__build.py`, renamed `__codeinit` to `__prefix` and added `__suffix`.
(3) In `src/date.py`, rejected all other named-references except `Date().today`.
(4) In `src/task.py`, added the static variable `sg` for the special groups list.
Added the TaskFile class with scan() & save() methods.

The scan method goes through the data file ensuring that it is
formatted correctly, and simultaneously an index containing the
starting and ending file pointer positions for each group. This
way, only the necessary data can be loaded for use.

The save method uses the above index to write data into a temporary
file, which at the end of the process replaces the original (in an
attempt to prevent file corruption). A list of groups is created
from the above index to determine the order in which data is
transferred, with updated and deleted groups handled.