Use concurrent.futures when it’s available