Fix distort_random for distributed meshes

Previously, distort_random produced unconnected meshes for distributed meshes. Now we don't move vertices that belong to two or more different processes. The resulting mesh is connected.
you should be able to replace this loop by
```
    memcpy(&tree_index[0],ptr,sizeof(unsigned int)*cells)
```