TSOutgoingMessage has an existing overridable method
-dataMessageBuilderWithThread:transaction: that returns an
SSKProtoDataMessageBuilder; this makes it easy for the base class to
add a profile key to every outgoing DataMessage message no matter how
the proto gets built. Similarly, we (sometimes) want to put a
PniSignature on every outgoing message (of any kind), so now we have
-contentBuilderWithThread:transaction:. (The PniSignature part comes
next.)