INT-2931 Fix concurrency problem in getRequiredConversionService()

AbstractMessageRouter.getRequiredConversionService() and
IntegrationObjectSupport.getConversionService() try to initialize the
conversion service and may be called from multiple threads. In case
of bad timing this could end up in an uninitialized conversion service
causing NPEs in subsequent method calls.
To solve this issue, the conversion service is initialized with
double-checked locking.

For further details see https://jira.springsource.org/browse/INT-2931