classDecl := IDENTIFIER '{' method* '}'
funcDecl := 'func' IDENTIFIER params '{' decl* '}'
params := '(' ( IDENTIFIER ( ',' IDENTIFIER )* )? ')'
Each parameter is separated by comma.
useDecl := 'use' IDENTIFIER ( '='
IDENTIFIER(.IDENTIFIER)* | STRING )?