Allow User to select multiple aircraft categories

- adding select2 gem for doing nice multi selects
- removing partialised extra form fields that were left in
Merge pull request #166 from alphagov/allow-multiple-tags

Allow User to select multiple aircraft categories
Extract AaibReportServiceRegistry from services
Extract AbstractDocumentsController

Now that CMA cases and AAIB reports both use a service registry with the
same interface we can extract most of the common behaviour into a
superclass.
Merge pull request #169 from alphagov/extract-common-controller-behaviour

Extract common controller behaviour
Simplify observers interface in AaibReportServiceRegistry

Use the same interface as we're using in CmaCaseServiceRegistry by
wrapping the ObserverRegistry methods we care about in an ostruct.
Extract AbstractDocumentServiceRegistry

CmaCaseServiceRegistry and AaibReportServiceRegistry do the same thing
with variation for just three dependencies -- repository, builder and
observers.