messaging: support complex types in vector<> serialization
messaging: support complex types in vector<> serialization

do_with() required a movable type, but the union U is not movable if the
vector element type is not, with out help from us.

respu/scylla,linearregression/scylla,capturePointer/scylla,victorbriz/scylla,stamhe/scylla,kjniemi/scylla,victorbriz/scylla,rentongzhang/scylla,stamhe/scylla,dwdm/scylla,aruanruan/scylla,dwdm/scylla,glommer/scylla,guiquanz/scylla,raphaelsc/scylla,capturePointer/scylla,rluta/scylla,scylladb/scylla,avikivity/scylla,duarten/scylla,victorbriz/scylla,glommer/scylla,gwicke/scylla,bowlofstew/scylla,justintung/scylla,kjniemi/scylla,senseb/scylla,aruanruan/scylla,rluta/scylla,guiquanz/scylla,glommer/scylla,acbellini/scylla,senseb/scylla,guiquanz/scylla,duarten/scylla,avikivity/scylla,avikivity/scylla,linearregression/scylla,bowlofstew/scylla,tempbottle/scylla,gwicke/scylla,respu/scylla,scylladb/scylla,justintung/scylla,tempbottle/scylla,raphaelsc/scylla,duarten/scylla,rluta/scylla,asias/scylla,rentongzhang/scylla,raphaelsc/scylla,eklitzke/scylla,tempbottle/scylla,kjniemi/scylla,wildinto/scylla,dwdm/scylla,capturePointer/scylla,bowlofstew/scylla,respu/scylla,rentongzhang/scylla,eklitzke/scylla,stamhe/scylla,shaunstanislaus/scylla,phonkee/scylla,shaunstanislaus/scylla,aruanruan/scylla,justintung/scylla,scylladb/scylla,acbellini/scylla,acbellini/scylla,wildinto/scylla,scylladb/scylla,gwicke/scylla,phonkee/scylla,kangkot/scylla,kangkot/scylla,linearregression/scylla,shaunstanislaus/scylla,senseb/scylla,phonkee/scylla,eklitzke/scylla,asias/scylla,wildinto/scylla,kangkot/scylla,asias/scylla