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.

Not sure if there's a desire for such functionality in core, but figured I'd push up a pull-request and find out.
Outside of easier testing, we don't currently gain anything by exposing this method right now. I'll make it private.