asynchronous file object

This is an object with an API identical to a file object, with the exception that all methods that do I/O are async functions.

The main ways to create an asynchronous file object are by using the trio.open_file() function or the method. See Asynchronous filesystem I/O for more details.