elegantizing parser

local method, annotate types with brackets, minimizing method
constructors needing to be changes (down to just arrayExpr,
arrayAssignExpr, newArrayExpr)