End elides from the end of the string if it is longer than given
size parameter. The resulting string will not exceed sz in length,
with space reserved for ... at the end.
Middle elides from the middle of the string if it is longer than given
size parameter. The resulting string will not exceed sz in length,
with space reserved for ... in the middle