Complementary fix for #5, corrects fault on #6

When a future is marked as failing with a cause it always attempts to terminate the connection. If the connection has already been terminated, this yields no effect.