add specs for Device#write_async and make them pass