async impl

added the possibility of asynchronous read, write and remove