Fixed StackOverflow when adding exclusions

Hi John,

I opened a bug on this, then decided to take a whack at it...

Cheers,

-Brandon

I don't think you need to split this out into a separate method. You could rely on the behavior of `Set` that it returns a `boolean` only if the item is added to the Set. So something like,
```
if (spec.isSatisifiedBy(it) && matched.add(it)) {
  matched.addAll(....)
}
```