starting on adding async helpers - todo: add tests and examples