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.

> get_coarse_cell_to_p4est_tree is used to collect the data that will be sent,
> get_p4est_tree_to_coarse_cell is used to get from the sent data to the deal
> cells. Since get_p4est_tree_to_coarse_cell has already been exposed, I thought
> this would be fine as well.

Ah, yes, I had forgotten that we already expose the opposite permutation. I 
suppose this is ok then.