#1710. Fixes cached resolution mutual eviction

Fixes #1710, #1679

When stitching the minigraphs together only exclude the artifacts that were evicted in *all* graphs, instead of some graphs.

Consider the following scenario:
- Y1 evicts slf4j-api 1.6.6 and picks 1.7.5
- Y2 evicts slf4j-api 1.7.5 and picks 1.6.6

At the root level, we need to use our own judgement and pick 1.7.5.
The fix is one-liner change:

```scala
else Vector(xs.head.copy(evicted = xs forall { _.evicted }, callers = xs flatMap { _.callers }))
```