Fix bug #5674: Bogus bind to address -> all interfaces unusable until restart.
Actually use runningAcceptors.
Fix synchronization.
Use Lock and multiple Condition's
Check for shutdown when waiting in all places we wait.
waitBound() should not throw InterruptedException. (Caller isn't going to deal with it sanely and interrupt() isn't used)
Logging
Merge branch 'fix-bug-5674' into next