Add the basic new-draft-invoice required fields to Invoice
Invoice has a status of Draft by default
Add the recommended new-Invoice data
Allow Invoice status to be set
Use Symbols instead of Integers for constants
Invoice status can be Authorised
Add Voided and Deleted invoice statuses
An error is raised if an invoice with an invalid status is created