Low: executor: handle remote server socket consistently
Sometimes we used -1 to indicate not connected, sometimes 0 (which technically
is a valid fd even if it will never be used for a server socket). We even
attempted to close the socket when it was guaranteed to be -1 (which was
detected by static analysis).
Now, we always use -1 to indicate not connected, and close the socket
only when non-negative.