@jto awesome, thanks!

@mandubian I'd recommend removing `flatMap` altogether - it's no different to the ones on projections of `Either`, and `.asEither` already exists. One enhancement would be:

```scala
def viaEither[EE, AA](f: Either[EE, AA] => Either[EE, AA]): Validation[EE, AA]
```

That way you could explicitly do the equivalent, if you wanted to ignore errors (but it should not be possible via methods directly on `Validation`, since that's the whole point of the type).