More async refactoring