Played around with async. Compiles, but throws std::system_error for some reason.