object: add glib signal proxy
buffer code cleanup