Create more sane "sections" API

- Stores sections data in @sections instead of @valid_sections
- Changes class method to `has_sections`
- Adds reader method, `sections`, to expose sections array directly
- Fixes tests and GenericAssetStructure to use new API
Create DataStructure::Renderer

Adds new API to controller and view, and creates a new Renderer class
for implementing this API.  The new approach is to have the renderer
totally separate from the rest of the logic so it's easier to avoid
namespace collisions and other complexities.
Add label translator class
Rename renderer variables for clarity

sections => section_renderers, and attributes => attribute_renderers
Implement attribute renderer
Add to-do note
Slightly refactor AttributeRenderer#field

Fixes some code left in that didn't do anything (label translator), and
uses an alias for the attribute name alias which had initially been
created but unused.

Uses an h2 tag for the label instead of "label" since it's not actually
labeling a form field