Add optional support for libnotify notifications.

Added suport for [libnotify](https://developer.gnome.org/libnotify/) as a compile-time dependency with the WITH_LIBNOTIFY flag, enabled by default. When not enabled, any use of the function will result in a girara style notification to the user explaining him that girara was compiled without it.

The notification will try to use the icon in the following order:
 - If there is a "named icon" such as the ones in /usr/share/icons, it will try
   to pick it up.
 - If there is an icon file, it will try to pick it up.
 - If there is nothing, it will use the "info" stock icon.

Refer to the "window-icon" and it associated callback for more information on icon handling.
I was thinking about something like the following:

```c
#include <girara/session.h>

int main()
{
  gtk_init(NULL, NULL);

  girara_session_t* session1 = girara_session_create();
  girara_session_t* session2 = girara_session_create();
  girara_session_init(session1, "session1");
  girara_session_init(session2, "session2");
  girara_session_destroy(session1);

  girara_libnotify(session2, "title", "body");
  girara_session_destroy(session2);
}
```

This code aborts with `libnotify:ERROR:notification.c:568:notify_notification_show: code should not be reached`.

Also, if `sessionname` is `NULL`, `"girara"` should be passed to `notify_init`. Otherwise the call fails.