Add trial_period parameter to subscribe()

When testing recurring payment integration, it's useful to be able to
set a very short trial period. Supply it as a timedelta object.
Sync invoice objects when the invoice.created webhook is received

This is needed for metered billing - extra line items may need to be
added to the invoice after it's created, but before it's closed and paid.
Handle invoiceitem.created events
Implement invoice.add_item()