add encoding.TextMarshaler/TextUnMarshaler support