MSON AST reflecting the new specification

For @fosrias, @honzajavorek and @pksunkara to review. 
> Should this be types_list and have the description indicate they also represent nested value types?

You mean the `name` and `nested_types` should be combined together into a `type_list`? (where the first means the type of the instance and the rest possible nested types?