HTML versions of consultations

This moves a number of the publication specific functionality out into
modules so that it can also be used by consultations.

Not entirely happy with the `send` in `attachments_presenter.rb` - happy
to field alternatives. Cannot use polymorphic paths as the route names
and the paths aren't quite standard.