More work, allowed IAsync destructor to close handle