Support for emailing out error reports for csvs which fail validation.  Breaks down into the following parts:

* closure and callback for actually generating the email on receipt of a report
* updates to app_email: factory for creating attachments, and workarounds to deal with the fact that sometimes send_email will be called without a flask application context
* template for accompanying error email
* associated testing - utilises mailtrap to ensure that mails are actually sent