[WIP] Neighborhood iterators

This doesn't look like the right size to me, compare with the code in the array_iter init:

```
            size_t iterdata_size = m_array_tp.extended()->get_iterdata_size(m_iter_ndim);
            m_iterdata = reinterpret_cast<iterdata_common *>(malloc(iterdata_size));
```

sizeof(m_iterdata) will be the size of the pointer, which would be too small I believe.