adding object change detection feature in watchcollection