Handle more cases for object:active-descendant:changed

* Filter out events where the active descendant is not provided.
  That is indicative of a broken accessibility implementation
  and should not be dealt with in the default script.

* Stop filtering out events solely on the basis of the parent
  lacking STATE_FOCUSED; if the active descendant has this state,
  then we're almost certainly in the widget emitting the event.