Add async responses
Add fully async results and refactor handler