implement mapEitherWithKey
whoops