Version 2.1: block_notifications runs as a task

The block runs now as a task. The cron function has been replaced
with the classes/task/notify.php script.

The notification_frequency option has been removed both globally
and on the course level.

The project structure has changed a little bit. Namespaces and
classes are now managed following the moodle convention.

The log table has an additional field for extended information
about the event.

A new global setting has been introduced: history_length.
This setting is used to prune the log table and keep it shorter.
The user can set how many log entries per course to keep by
modifiying this setting.

The log table has an index activated on the course_id column in
order to improve the speed when the block is used in many courses.