Do not try to reuse message on error

If one of the call-backs has an error, just recreate the soup message. If we
want to re-use the old soup message we need to get the reference counting
right etc. This could lead to cases where notifications were not sent properly
because the first URL was failing and the requeuing failed as well.

Also it caused crashes by leaving a dangling pointer in pending_messages.

https://bugzilla.gnome.org/show_bug.cgi?id=703263
Call action callback through idle on error

https://bugzilla.gnome.org/show_bug.cgi?id=669729
examples/light-client: add --quiet, --help and repeat options

Options added to help with library performance measurements.
To send 1000 toggle commands with 50ms delay run:
gupnp/examples$ ./light-client -q -c 1000 -d 50 toggle

For more options run:
gupnp/examples$ ./light-client --help
Usage:
  lt-light-client [OPTION...] [on|off|toggle]

Help Options:
  -h, --help                     Show help options

Application Options:
  -q, --quiet                    Turn off output
  -c, --repeat-counter=value     Repeat counter
  -d, --repeat-delay=value       Delay in [ms] between each iteration

https://bugzilla.gnome.org/show_bug.cgi?id=708575
examples/light-server: add --quiet and --help options

Quiet option is useful to disable printing overhead
when measuring library performance.

Example run:
gupnp/examples$ ./light-server -q
^C
gupnp/examples$ ./light-server --help
Usage:
  lt-light-server [OPTION...]

Help Options:
  -h, --help       Show help options

Application Options:
  -q, --quiet      Turn off output

https://bugzilla.gnome.org/show_bug.cgi?id=708575
Prepare 0.20.7