List tags grouped by their parent

Add a method to the TagsController to group tags by the root/parent tags
after they are retrieved from the database. This also includes an
integration test for the tags list, and some CSS styling for the table.
Pre-fill tag type and parent information when present
Improve tag management interface

- Use list elements rather than tables to display the list of tags, so
  that we have clearer grouping of parents and their children.

- Add wells around form sections to keep similar appearance to
  artefact form.

- Add warning message above save buttons.

- Use a select field instead of disabled text box for tag type when
  creating a child tag.
Add curated list functionality for section tags

This takes the existing curated list functionality from the 'browse
section' controller, adding it to the new tags UI. I've added new
functional test coverage around this.

I've iterated this a bit, so that it doesn't increase the complexity
of the TagsController too much, and so it's styled to fit in with the
new tag form. However, it does come with a massive TODO noting that we
should improve how curated lists work soon.