A label now looks like ".foo". This makes it a completely separate
namespace from variables.
When we introduce enums, the values will also look like ".foo" an we
know which enum is intended based on context.
Each switch/while will potentially create a local enum type for the
labels.