auto unbind when there are no more listeners