#add - explicit connect and disconnect callbacks
#fix - append disconnect handler only once