Updated .gitignore file to exclude TODO files.
Renamed directory "etc/" to "examples/".
Improved const-correctness and usage of `size_t` type.
Improved naming conventions and converted groups of `#define`s to enumerated types.
Made week and day objects opaquely managed.
Fixed times specified in octal instead of decimal.
Fixed poor handling of invalid values for --time argument.
Fixed handling of out of order times.
Fixed changelog generation bugs in mkrelease script.
Refactored print "--next" and "--slice" to use common functions.

This also fixes a bug in "--next" when used with the "print" subcommand.
Formerly, if "--next" would run off the end of the list of entries, an assertion
would fail. Now, a warning is printed to stderr and the program exits
gracefully.