stopped using jshashtable, storing listeners on object, added Navi function to augment objects with Navi functions