Added Source Map description

Also cleaned up a bit of organization. And removed the top-level `Document` type from MSON AST.
Because the version of the spec is 2.0