need to be able to queue up a TUN read/write at each tick
then finish dealing with it in the main event loop
which is damn near impossible to do along with unix-style asio
that waits for data to appear/disappear before signalling
if so, add it to the listeners, but _not_ the epollfd
abstraction - epollfd takes _only_ sockets, and will reeeee
if you give it a file handle. fuck 16-bit Windows with a rusty
knife. In this case, we assume (like unix) that a file/device file
is _always_ ready to write
the native async event system on windows
is _not_ very good at getting external events
(i.e. we receive data, but we don't get any indication
that this ever happened)