Why does HTML need a hierarchical structure? Why not give every element a unique ID and have higher level tools for managing ontology/behavior/appearance all together?