The purpose of the optional associated object is generally to pass
the object posting the notification to the observers, so that the
observers can query the posting object for more information about
the event.
Notifications are by default added to a pending notification list.
This way, if an observer is not registered by the time they are
posted, it will still be notified when it is added as an observer.
This behaviour can be turned off in order to make sure that only
the registered observers will be notified.
The info array serves as a container for any kind of useful
information. It is added to the notification object and posted along.