add revised mson spec

@zdne @pksunkara @honzajavorek Please review and merge when ready.

This PR restructures the spec per discussion in https://github.com/apiaryio/mson/pull/4 to progressively introduce functionality and reduce having rules span different sections. Comments in the other PR have been addressed here together with the restructuring and completion of missing definitions (hopefully :)).
I was thrown off here a little when I got to this array. Up until this point, the examples had used members to define structure, but here the members define samples for the array. Upon my first reading, it seemed as though this was showing an array with actual data rather than an array with sample values.

Just an FYI from a first-time reader.