Add a state for each pipe handle in the server. Create a socket on when the pipe is opened, not before.
when opening a named pipe if the pipe exists but no instances of it are currently waiting for a connection.