Instead of protected, make composeBSONObject final so it can be invoked extenrally (wire protocol writes) but not overridden.
DeleteMessage serializes now (hopefully)