EclipseWriter: support reordering of compressed cells.

This commit removes the implicit assumption that the cells are ordered following the Eclipse Cartesian logic 
( e.g. as made sure by this two assertions:
assert(compressedToCartesianCellIdx[i] >= i);
assert(i == 0 || compressedToCartesianCellIdx[i - 1] < compressedToCartesianCellIdx[i]);
)
Now arbitrary cell orders are possible and data is remapped to the Eclipse order upon write. 
This seems to do the same as the code above, why is it duplicated? Also, the erase/resize of data seems to be missing here.