adding in experimental concepts for object.observe