Also I think it'd make sense more if `apply` was called `logResult`.

```scala
def logResult(log: Logger, results: Ouput, key: ScopedKey[_])(implicit display: Show[ScopedKey[_]]): Unit = ...
```