I'd vote for loosing the `Option` around `onEvict` and adding a

    val EmptyEvictionHandler: Future[Any] => Unit = _ => ()

on the `Cache` companion object as the default.