merged the helper with the backend

transmit thread now sends acks and things, but it has trouble
receiving...this is because it doesn't use the overlapped IO stuff.

TODO: put overlapped things into the transmit and receive threads
Merge branch 'eric' into dev