Writable type storing multiple Writables.
This is *not* a general-purpose tuple type. In almost all cases, users are
encouraged to implement their own serializable types, which can perform
better validation and provide more efficient encodings than this class is
capable. TupleWritable relies on the join framework for type safety and
assumes its instances will rarely be persisted, assumptions not only
incompatible with, but contrary to the general case.