Add general world timer events

Currently, only 4 timer events are fired per day. This PR increases the rate to 100 (adjustable) and uses more the general event class to avoid the need to catch different event types (for the same thing).

The original semantics is still available through method calls.