fix documentation, add initializer for comm buffer
initialize new static communications buffer
add setting for static comm buffer size
use preallocated comm buffer to avoid repeated mallocs