core::comm: Modernize constructors to use `new`