[Memory Leak] Partial fix for bug 129

https://github.com/01org/dleyna-renderer/issues/129

This commit attempts to partially fix bug 129.  It cannot be
completely fixed at the moment due to a bug in GUPnP.

https://bugzilla.gnome.org/show_bug.cgi?id=708751

At least we're freeing the list now, if not the strings that it
contains.  Also, to reduce the effect of the memory leak, this
commit ensures that it only happens once per renderer rather than
once each time we receive an event from a renderer.  The assumption
is that a device will not dynamically change the DLNA classes that
it supports.

Signed-off-by: Mark Ryan <mark.d.ryan@intel.com>