MSON AST reflecting the new specification

For @fosrias, @honzajavorek and @pksunkara to review. 
The other options is to do the following

- name (enum)
  - (string)
  - (Symbol)