Utilities to manipluate char chunks. While String is
the easiest way to manipulate chars ( search, substrings, etc),
it is known to not be the most efficient solution - Strings are
designed as imutable and secure objects.

Maximum amount of data in this buffer.
If -1 or not set, the buffer will grow undefinitely.
Can be smaller than the current buffer size ( which will not shrink ).
When the limit is reached, the buffer will be flushed ( if out is set )
or throw exception.