use tell instead of fail
fix desugarring scope problem
change AST; add SymTable prototype