Redo 143 Support custom timestamp field name in KafkaAvroMessageDecoder

@HenryCaiHaiying , please review this PR, thanks for your time!
I saw JsonStringMessageDecoder has the same two fields, I guess you copied them into KafkaAvroMessageDecoder.  If this is the case, it might be better to move those two fields into superclass MessageDecoder and have them initialized there.