Literal and Member Type changes

There are 2 major changes to the AST here. First is the introduction of `Literal`. We have already been using this along with `Markdown` in the MSON parser. This is just making it official.

Second is the addition of a `Members` which represents a **Member Type Group** containing a collection of `Member Type`. This is needed to represent the following example:

```
- person (object)
    - One Of
        - full_name
        - Properties
            - first_name
            - last_name
```

@zdne @fosrias Please review.
non-structure -> primitive

See [Primitive Types](https://github.com/apiaryio/mson/blob/master/MSON%20Specification.md#211-primitive-types) in MSON spec (we should use the same terms here).