Add the reimbursement to ReimbursementHelpers.create_creditable params
Fixes #5197
Add track_inventory to permitted attributes.
Adds more specific error messages to promotions.

When checking if a promotion is eligible, the rules can specify why they
are ineligible by populating `eligiblity_errors`. The first error is
then displayed to the customer instead of a generic message.

Closes #5165
Add global product promotion blacklist.

Any products not marked as `promotionable` will not have promotions
applied to them. Also, orders containing only non-promotionable items
won't have order-level promotions applied.

Closes #5074
Fix a typo
Fixes #5201
Send originator of refund as an option to the gateway

Then the gateway can use that information for logging/auditing/connecting/etc.
This applies mostly to gateways that store the resulting objects in our database. In particular, the store credits extension can use this to link the credits generated & refunded to the originating object (a refund).
Fixes #5202