Changed to using our own threads for async reads instead of aio.h