Add option to abort archiving transactions if the equivalent statment has not yet been generated

If would be useful if the management command for archiving transacations refused to archive them unless the associated statement had already been generated.

I'm also sort of wondering whether it wouldn't have been better for archiving functions to take a statement as input instead of a date range (i.e. to always require a statement). Probably we just want a helper function that does this?
I think we need a test that shows that passing in ``--no-statement`` allows transactions to be archived even when there is no equivalent statement?