async: fix [with_lock]
async: make interface more `Async-like'