I have been told that macro hygiene can be used to handle the problem where elements and attributes can have the same name. If so, this could be used to remove the ugly $ prefix for attributes and $$ prefix for the content attribute. I'm unsure how much work is involved here. If someone knows more about this topic, please chime in.