properly dispose component on unbind