shared: Only update serialize pointer when operation succeeds

Prior to this commit, if a serialize call failed from gdbm, bt-daemon
would crash due to a double free. This commit rectifies the issue by
only updating the pointer when we successfully serialize data.

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>
demo: Convert helloget to new API

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>
demo: Convert helloset to new API

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>
demo: Convert hellonotify to new API

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>
libbuxton: Handle CHANGED in response_value

Clients may now use response_value(response) to obtain the value
when they recieve a notification for a key change.

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>
demo: Convert timing demo to new API

Signed-off-by: Michael Ikey Doherty <michael.i.doherty@intel.com>
demo: Free data in hello demo callbacks
libbuxton: Initialize key to NULL