Changes to better support accessibility via ARIA

These changes should close #304
I'm not sure about this whole part (it's a bit hard to review with several different changes in the same PR).
Why use role=main instead of the `main` element?
I don't think that having a structure that excludes introductory material and appendices is a correct use of the notion of main. If I asked for the main content of a spec and obtained that, I would be very surprised.