AMQP-422 PublisherCallbackChannel: postpone close

JIRA: https://jira.spring.io/browse/AMQP-422

Add `stopSemaphore` and `closeTimeout` option to the `PublisherCallbackChannelImpl`
to postpone physical `close` until timeout or handlong for all pending confirms

Decrease `@Repeat` for `RabbitTemplatePerformanceIntegrationTests` for better build performance
? should only interrupt on `InterruptedExeption`.

Also, the `waitForConfirmsOrDie()` needs to be its own try block - it can throw exceptions (timeout etc), so the `close()` would be skipped.