Creating and editing AAIB reports

This pull request included a large chunk of refactoring to of the SpecialistDocument/CmaCase creation stack to allow classes to be more flexible in regards to the creation of different document_types and introduces a new AaibReport document. There is still some duplication in the code here which would be good to remove if possible with further extension of document_types
Would it be nicer to pull out `params.fetch("id")` and `params.fetch("aaib_report", {})` into `document_id` and `document_params` methods?