I think we can define FunctorWithIndex instance for NonEmpty if `f` is also `FunctorWithIndex` and it's possible to subtract `one` on the `i`ndex