AMQP-432: Properly convert BasicProperties values to and from MessageProperties

JIRA: https://jira.spring.io/browse/AMQP-432

Previously `DefaultMessagePropertiesConverter` converted just `LongString`, but BasicProperties may contain List and Map values with nested LongStrings.

Values unsupported by AMQP which are contained in Lists or
Maps are also not converted from `MessageProperties` to `BasicProperties`.

* Added logic to properly convert from LongString values nested in
Lists/Maps (`convertLongStringIfNecessary()`).
* Add logic to properly convert unsupported values nested in Lists/Maps to
Strings in `convertHeaderValueIfNecessary()`.
* Add unit tests

**Cherry-pick to 1.3.x**