IOCP.Windows: add bindings for GetModuleHandle and GetProcAddress
Load CancelIoEx without help from C
Pull cValue out of Completion structure

It complicates things when we want the completion value to be a function
of the number of bytes and error code, and keeps us from simply returning
the Overlapped itself.
IOCP.Bindings: add castOverlapped, peekOverlapped
IOCP.Bindings: getQueuedCompletionStatus: don't automatically free the Overlapped

Otherwise, targeted cancelation (CancelIoEx) cannot be done safely.
The Overlapped must not be freed before or during a call to CancelIoEx.
IOCP.Bindings: make runCancelIoEx return False if nothing was found to cancel, and document CancelIo and CancelIoEx