async+perf: cherry-picked fixes by @smikes, some cleanup of them, closes #229