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
Also need to defer the close if `this.publisherReturns`. 

I also don't think we want to defer (in either case) for 30 seconds by default; something like 5 seconds would be more appropriate. We shouldn't overload `closeTimeout` for this purpose.