FastSerializer: Buffer output and write it only at the end

Use OSequenceOutputStream class to concatenate strings in a
Sequence<sal_Int8> buffer. And write data to file only at the end.

The design is a bit fragile, since all FSHelpers need to be destroyed
before calling FilterBase::commitStorage(). Otherwise data is not written.

Change-Id: I26b02335ef36011bfcda17484b560811d18c7657
FastSerializer: We already know the attribute value

Change-Id: I6996e15f99b94b50c1903092d7424a96339ccfaf
Remove mutex from OSequenceOutputStream; it's intended to be fast

Make the caller responsible for using it wisely.
AFAICS it's used only in FastSaxSerializer, so far.

Change-Id: I50d48fd7f3e6cdeb9e4637868da213b8171e542b
FastSerializer: Do not keep whole sequence in memory; write in chunks

Change-Id: Ibca65a2b8397358ac4013c8e5b53389ac6949e4d
FastSerializer: check for valid output stream in one place is enough

Change-Id: Id89fb1f0444331c2858a9795ae81dcdb875d3d2b
FastSerializer: Have OString version of write() too.

And remove characters() member function.

Change-Id: Ifcedbb6d969b7b057ff378d2fbce09c2dde5ac18
FastSerializer: Remove escapeXml() creating OUString(Buffer)

Instead directly write the content.

Change-Id: I7b6db925348b879a013acbd2a76a80d590f721c0
FastSerializer: Avoid sequences where possible

Change-Id: I359ca9d3b766b71904e4199ebfbdbd5b203775cc
FastSerializer: Remove throw specs; this is not UNO implementation

Change-Id: I462f8ed89de48174ed7aa6e008709963bec50649
fastparser: avoid allocating un-used FastTokenLookup class.

This contained an rtl_Sequence complete with horror internal
allocator, caught red-handed serializing threaded loading to no
good purpose.

Change-Id: I837b2c17e4f70fd6a49bed33ad74a7d79f98f35c
FastSerializer: Use FastAttributeList directly to write faster.

Change-Id: I28085d4e060bcf052e6aa97a0822a4d653d7c066
FastSerializer: avoid some more OStrings

Change-Id: I2d5dbe9adccdd231cc16a1f83a90a4adeb965c64
FastSerializer: Have own fast cache buffer implementation for XOutputStream

Previously comphelper::OSequenceOutputStream was used.

Change-Id: I4dc38c8c62422e59efa1071312497364cdf5be3c
Revert recent changes to comphelper::OSequenceOutputStream

Some of the changes could be wrong and we don't need them.

This reverts commit 784d4bea86d8cbb3a855e557c465ce50a049cefc.
This reverts commit 8524d5aba59148eef94859289f00ab6477e0e821.
This reverts commit 018f1deae884febbbe639c7ee46b45ce4807e9d3.
This reverts commit 8124fddc5803b4e104d4fc2456cb92cb030d9436.

We use our own helper cache class in FastSaxSerializer
since f736eba5a9df8645849a37b08d2764a5f495ab45.

Change-Id: Iaca6b5b11cb32595db4420a02fa72b0007cf6286