Complete async conversion for read().  Stub in some error handling stuff.