support for in-place redistributions
Redistributions should also work when input and output arrays are the same object. This needs the following improvements:
- Detect indices specified in redist construction that have same offsets in input and output on local task.
- Remove these indices from copy operation, this requires semantics for idxlist element removal (in sync with offset lists).
- Detect in-place case from array arguments and use buffered send or something similar for communication to prevent overwriting of indices also sent to other processes.