Chunk routine would fail if chunk ended between two halves of a surrogate. Fix that.
UTF-7, UTF-16 and UCS-2 (no endian-ness specified and no BOM), UTF-32 and UCS-4 (no endian-ness specified regardless of BOM) all revert to parent routine.
CsvChunk will not be moved to production, so its test should not be in the regular unit test suite. However, it still has some value in the Benchmark suite, so move it there.