Fix handling of STRING16.

When part of a ListOfTextItem, show the STRING16 the same way in both
places where its value is shown - hex digits or text string.

If the STRING16 contains only 8-bit characters, treat it as ASCII; the
values 0x20 through 0x7E are *probably* ASCII (although that's not
guaranteed), but the values above 0x7F aren't guaranteed to be anything.
*Don't* use tvb_get_ptr() to fetch the string value; that's not
guaranteed to work with strings.

Don't impose an upper limit on the maximum displayed length of a
STRING16.

Change-Id: Ia14812335b9afbff695efe5046dc0ffc2483a351
Reviewed-on: https://code.wireshark.org/review/3704
Reviewed-by: Guy Harris <guy@alum.mit.edu>