INT-3460: Add `AbstractMessageProducingHandler`

JIRA: https://jira.spring.io/browse/INT-3460
INT-3470: Fix SF 4.1 Compatibility

JIRA: https://jira.spring.io/browse/INT-3470

According to the commit https://github.com/spring-projects/spring-framework/commit/c06ac06,
the `MessagingException` is now `NestedRuntimeException` including nested StackTrace.
Hence test-cases have to be changed to the `Mathers.containsString` instead of `equals` for the `e.getMessage()`

**Cherry-pick to the 4.0.x**
INT-3486 SimplePool suppress InterruptedException

JIRA: https://jira.spring.io/browse/INT-3486

Previously the undesired StackTrace has been logged in case of Thread interruption, e.g. component `stop()`

Suppress `InterruptedException` in the `SimplePool#getItem()`.
Since we do the `Thread.currentThread().interrupt();` on the `catch (InterruptedException e) {` it does not make sense
to rethrow it as a `MessagingException`, because the thread is interrupted anyway.
INT-3486: Fix typo in the name of `MutableMessageBuilderFactory` class