INT-3227 Fix Race Condition for WARN Log

JIRA: https://jira.springsource.org/browse/INT-3227

In MessagingTemplate.TemporaryReplyChannel, it was possible
the `clientHasReceived` boolean could be set by the other
thread after normal message receipt, but before the sender
tests it for the purpose of emitting a duplicate reply log
message.

Capture the boolean value of `clientHasReceived` before
counting down the latch.
INT-3219: Document Retry Exception Classification

JIRA: https://jira.springsource.org/browse/INT-3219

* Upgrade to Spring Retry 1.0.3
* Add a section to Reference Manual about Retry Exception Classification
INT-3223 Tail - Exclusive Attributes

JIRA: https://jira.springsource.org/browse/INT-3223

Disallow 'native-options' if any of the attributes
required for the Apache implementation are specified.
INT-3223 Polishing

JIRA: https://jira.springsource.org/browse/INT-3223

Don't use primitives in Tail factory bean setters so that the placeholders
for attributes that force the Apache implementation can resolve to "".

Test for an empty string in native-options and don't set.
Merge remote-tracking branch 'upstream/master' into 4.0.0-WIP

Conflicts:
	spring-integration-core/src/main/java/org/springframework/integration/core/MessagingTemplate.java

Resolved.