REFACTORING: Remove deprecated code
REFACTORING: emit to use the same coding as get
NEW: User-defined type (MPI)

Reduction is not supported for user-defined types, yet.