Added module for translating a metaxa description to a rascal syntax
description.

At this point there is no working analysis module, i.e. a module to
check if a metaxa description makes sense with regards to typing
etc. The plan right now is to assume that any incoming description is on
the right form, and generate a rascal file based on that. We will simply
have to make sure that our example descriptions are correct without
using any automated semantic analysis.
Added functions for getting the scope of declarations within a
`Decl` (syntax production).
Made Scope an alias for a map rather than a set. This should make
getting values out of the Scope simpler.
Added more examples; even simpler ones than the exp-example (the
language consisting of left associative binary addition of literals).
Added an AST module. This module defines the data types which can be
used together with the `implode` function to make an AST out of a parse
tree.

Note that the AST is not complete; it can not be used to translate an
arbitrary parse tree to the corresponding AST. I have only implemented
the data types that I need at this point.

The motivation for adding an AST module was because dealing with the
parse tree was annoying when it came to star-productions. It seemed like
I had to implement custom helper functions in order to extract any
star-production to a list of those productions; if I just used the
star-production as-is, it didn't seem like I could use it as a
collection (like list, set, etc.).
Added a note about the scopeOfDecl()-function.
Added functions for getting the name of all start production in a
description - this should be all non-nested declarations.