async file manipulation