I'm basically using std::future and std:: promise in a way just opposite to how it was intended to be used(i.e what it seems to me).
It works, but there should be a less kludgy way to do the same...