C++ framework for developing asynchronous distributed applications with simple building blocks