message: improve either validation instance construction
diff: @@ -53,16 +53,21 @@ export const Monad: P.Monad<EitherURI> = {
  ...AssociativeFlatten
  }
  -export const getValidationApplicative = getValidationF<EitherURI>({
  - F: EitherURI,
  - any: Any.any,
  - both: E.zip,
  - fail: E.left,
  - flatten: E.flatten,
  - map: E.map,
  +export const Fail = P.instance<P.FX.Fail<EitherURI>>({
  + fail: E.left
  +})
  +
  +export const Run = P.instance<P.FX.Run<EitherURI>>({
  run: E.right
  })
  +export const getValidationApplicative = getValidationF<EitherURI>({
  + ...Monad,
  + ...Fail,
  + ...Applicative,
  + ...Run
  +})
  +
  export function zipValidation<E>(
  A: Associative<E>
  ): <B>(fb: E.Either<E, B>) => <A>(fa: E.Either<E, A>) => E.Either<E, readonly [A, B]> {
  