Memo field support

@wltsmrz 
```This field, if present, should be an array containing one or more Memo objects. Each Memo object can contain a MemoType variable-length field and a MemoData variable-length field to identify to the recipient the type of memo and arbitrary raw data associated with the memo. A list of well-known memo types with specifications is forthcoming.```

"Can" contain implies optionality, I guess