Add more detailed specification of array and string slice (i.e. [])

Also add more nomenclature wrt. grammar specification (adding
symbolic names to the parts of a grammar rule i.e. EBNF+)
Add Array and Hash to the Types chapter

This clarifies that Array is ordered and starts with 0 and that
Hash is unordered.