AMQP-453: Support Compression

JIRA: https://jira.spring.io/browse/AMQP-453

Add optional compression (gzip, zip) to the `RabbitTemplate` and
`SimpleMessageListenerContainer`.

- MessagePostProcessors
  -- support gzip, zip compression, decompression

- RabbitTemplate
  -- new properties `beforePublishPostProcessor`, `afterReceivePostProcessor`
  -- configure compression on send, decompression on receive

- Listener Container
  -- support decompression

- New Header
  -- `springAutoDecompress`, required for backards compatibility (so we don't decompress existing messages)

- Test cases
In future versions should MessagePostProcessor implement org.springframework.core.Ordered/PriorityOrdered?