windows: Introduce `closed_readers` vector instead of `MessageReader.closed` flag
windows: Introduce `closed_readers` vector instead of `MessageReader.closed` flag

Since the `closed` flag was now only being used to signal a reader that
has received a "closed" notification while being added to a set, the set
can just keep such closed readers in a dedicated vector instead, thus
avoiding the need for the `closed` flag altogether. This makes the code
simpler, clearer, and less error prone.

There is a slight behaviour change resulting from this: the
`MessageReader` object of the closed reader is now dropped already while
the reader is being added to the set, rather than only on the next
`select()` call. This shouldn't have any observable effect, though.

servo/ipc-channel