Use ReactAsync to render
Clean up callback stuff a bit