MSON AST

C++ implementation. For @zdne to review.

@fosrias and @honzajavorek can take a look if they want.
In C/C++ you do not start names with underscore. Please follow the standards and name it `m_members`. Hint search SO for why using an underscore at the beginning is bad idea...