memory usage optimizations for read and write operations

The comments in ```stringinfo.c``` say "_Make sure there is enough space for 'needed' **more** bytes_", so it seems to me that the 2nd argument here should be ```datumLengthAligned``` instead of ```datumBuffer->len + datumLengthAligned```.