stupid c++ futures why are you so difficult to use