using io_result enum
removed iocp calls
packet helper class
more abstract, tested calls