per code review, guarding against repeated Startup() calls and failed i/o completion ports