split IMessageProcessor in IMessageEncoder and IMessageDecoder
add more allreduce examples: concat and sum