So libmultiprocess serves three purposes, 1. dispatching comms across processes, 2. Wrapping these comms for a capnp rpc server/client, 3. Adding glue to go from normal instantiations of c++ virtual classes (commonly referred to as interfaces) to capnp interfaces.