New dd_sendrecv_{real,rvec}2? implementations

New implementations are called _nobuf and they do not use global
barriers for synchronization.
dd_sendrecv_rvec2 uses two calls to dd_sendrecv_rvec, one in each direction.
New wrappers for the shmem routines have been implemented to produce a
clear implementation.
Reduced the number of calls to get_max_alloc

Avoid computing the maximum of the buffers in each call to dd_realloc_state
(and similar routines). When the master computes the total of nat_home elements
and broadcast it, it also broadcast the maximum number of home atoms per PE.
This maximum number is used to reallocate the state->XXX buffers without
requiring the computation of the global maximum.

This commit also includes the actual replacement of dd_sendrecv_ calls by
the new non-buffered ones.