bugfix: '<' '>' is not required for identifiers in an EBNF, but may still be used.
bugfix: fixed regexp for matching literals
updated year
updated URL
added (optional) concatenation token
TODO: { ... } should be optional to start / end the EBNF
octdoc: @var changed to @type
octdoc: v: changed to p: for properties
octdoc: v: changed to p: for properties