Make expression list doubly-linked.
Converted scope from list to hash table.
Collapse SymbolMap and ScopeNode into Scope.