Renames tests to reference chapters
Tests for values and variables
Adds tests for type declarations
Adds tests for type parameters
Adds support for procedure declarations
Fixes disjunct patterns
Changes priority for match expression
Fixes string literals
Adds longest-match to ";" statements
Only allows EOCBlockStatSemi in special CaseBlock
Refines integer literals

They may not be followed by numbers or letters. More importantly, the l
or L in 1000L may not be confused with an operator.
Improves expression priorities (if vs access assignment)
VarId may not be a keyword
Improves types