Flags on surfaces
First attempt to fix AT-insufficient-for-level problem
Lexer changes to new @-is-part-of-token regime
Remove extraneous print statements
Fix complex structures using new lexer
Add precedence rule to avoid translation shift/reduce conflict
Change lexer to absorb hash into protocol tokens