pub async fn open_read_write<P>(path: P) -> Result<File, IoError> where P: AsRef<Path>,
open for read and write