Added support for async execution of passed in fns