Issue with variable definitions and referencing---back to the drawing board.

Variable allocation and definition need to be separate entities, not all definitions lead to allocation (e.g. struct members and unions).  Support for compile-time labels also requires separate definition semantics.  A variable table may be unavoidable.