Simplify Reducer.get_result
by using nditer this makes some progress towards #34014

Benchmarks for frame_apply looks as follows:

```sh
       before           after         ratio
     [3ed7dff4]       [5e77e1ed]
     <master>         <reduce-simplify> 
!      9.39±0.3ms           failed      n/a  frame_methods.Apply.time_apply_ref_by_name
-      8.52±0.2ms       2.87±0.2ms     0.34  frame_methods.Apply.time_apply_lambda_mean
-      9.32±0.2ms       2.96±0.3ms     0.32  frame_methods.Apply.time_apply_np_mean
```

I'm not quite clear yet why the one benchmark is failing. Running it over a thousands loops in the REPL seems fine, but maybe CI will help detect something
Closing as haven't had time to look but hope to reopen at a later date, since I think this is required for Cython 3