MessageCollection interface + cleanup