socket writing moved to background thread

prevents thrift method invocation from being needlessly long;
Bundle::Pack is now a regular QVector with shared pointers instead of
being a shared vector with non-shared items

todo: sending to client should be performed in batches