added a from_hash method to allow contruction of message types with nested AggregateFields from a set of nested hashes