@skadi i'm currently fumbling about with building a notification "daemon". that you have to have a method for "capabilities" is insane shit. there should be _one_ set of things which are supported. not $n combinations. freedesktop _always_ feels like rube-goldberg machines.
The only thing keeping me from capitulating and buying a physical planner are notifications, however I get by fine without them now so realistically they probably aren't that important.
My admitedly limited experience with libnotify is that it sucks a lot less than other freedesktop projects, notably xdg-utils.