I thought I was introducing an optimization be ensuring we didn't needlessly loop over multiple keys. Turns out, I introduced a bug that prevents the API from seeing multiple downtimes for a given host.

... object.  If there are multiple Comment or Downtime objects, we need to see them.