Allow repeated setup and teardown of communications without JVM restart

 * Interrupt threads from CommunicationSetup in timeoutOccured
 * Close ServerSocketChannel from ListeningThread when interrupted