Async output wrapper: Fix concurrency issue

Some misused synchronize blocks were causing various issues -- see bug
tracker 114 and 120 for details -- I've replaced them as appropriate.
Repetitive testing hasn't caused their reappearance, but I'll keep my ear
to the ground on this one.

Signed-off-by: Luke Stuyvenberg <stuyvenberg@wisc.edu>