AMQP-417 Fix Failing Test

- The executor thread returned its channel to the cache after the
   factory was destroyed.
- The `destroy()` method resets the connection; allowing forcing a new connection;
   it does not prevent the factory from being re-used. Adding a 'destroyed' boolean
   would change this behavior.
- Although 'dead' channels can be returned to the cache, they will be detected on
   next use, and refreshed.
- Stop the executor before destroying the CCF to fix the test case.

Well, I see the same result we can achieve, when we move `threadSentLatch.countDown();` outside of `doInRabbit()`, to the end of `run()`.
However this looks more clear, because we really wait here the executor termination before `ccf.destroy()`. And the next assertion is really based on the fact that all channels have been closed.
I'm merging it as is.

Good work! 
Need to be more carefull on tests review...