removed unneeded async in callback execution
replaced dispatch_block_t with Swift closure type