Set wm class and name with -name
dbus: Fix iterator memory leak

The manual for g_variant_iter_next_value states the following:

"[..]
Use g_variant_unref() to drop your reference on the return value when
you no longer need it.
[..]"
https://developer.gnome.org/glib/unstable/glib-GVariant.html#g-variant-iter-next-value

For most notifications (I guess), this is not a problem, since the leak
is relatively tiny. However, for notifications that contain big chunks
of binary data, such as those sent out by the new Spotify client, it
adds up fast.

The Spotify notifications in particular contain a rather large
"icon_data" byte array (contained in a dict), which while never recorded
is never-the-less iterated over and allocated, which in turn gives rise to
issue #173.

This fixes #173.
Merge pull request #175 from catharsis/mem-leaks

dbus: Fix iterator memory leak
Add Vim modeline for dunstrc.

With this modeline, the dunstrc gets syntax highlighting in vim by
default.
Merge pull request #178 from Necoro/modeline

Add Vim modeline for dunstrc.
Merge pull request #167 from badosu/add-name-setting

Set wm class and name
fix invalid free

Thanks To DaveDavenport
Use sanitized variable instead of settings value
config for max history length

fix #177
add new history_length option to example dunstrc
Abort build if config.h needs to be updated

close #179

Thanks progandy
move id replace before stack_duplicates logic
remove whitespace
Merge pull request #183 from nopjmp/stack-replace-fix

Notifcations that replace another still 'stack'
Add g_strdup to argv elements in string_to_argv
allow file:// protocol for icons
Integrate signal handling with the GLib main loop
Set dependency to '>=glib-2.36' as needed by the glib signal handler
Merge pull request #185 from mickael9/patch-1

Add g_strdup to argv elements in string_to_argv
Merge pull request #186 from progandy/master

allow file:// protocol for icons