ThreadMessageModel needs to be known fully to have its destructor visible at QCache instantiation time, at least with MSVC.