A general purpose parallel C++ runtime system for parallel and distributed applications of any scale