Async suport on threaded transport

This ensures that the threaded transport calls the new success/failure callbacks so that the client state is updated correctly