True, it does work this way, but it also has some drawbacks:
“a” is semantically wrong for non-link elements (e.g., separators or static textual Information)
“a” is not valid if it contains interactive content (e.g., buttons)
Even if I ignore the latter points, I cannot really use a (real, i.e. link) “a” within a dummy “a”
For now, I will go with the (dynamic) code change solution, but it would be really nice to have this improved in the next release. It should only require small changes. And I’m convinced there will be a simple solution for the focus issue you describe (perhaps auto-adding “tabindex” to each element?).