Invoicing [PD-870]

Ensures that invoice emails remain static and that invoice ids provided to the user are unique.

All tests pass.
How important, if at all, is it for invoice numbers to be secret? PK being auto increment, they're easily guessable.