Cart/Order Item Preambles

Last commit: Preambles

Title preambles can be used by extensions to add information before product titles.
This is useful in cases where cart/order items are the "values" of parent
product properties (e.g. Composite Products extension).

Hooking into the title itself to add this information will not suffice, because preambles should be nested in their own html block, outside the link anchor tags of product titles.

Example: A computer is added to the cart and
"Product X" is the chosen option for a "Mainboard" property. The
preamble allows developers to add a formatted "Computer Mainboard: "
string before the product title, where 'Computer' is the name of the
parent product/collection and 'Mainboard' is the property that this product corresponds
to.

The other 2 commits are minor additions to keep consistency with other action / filter hooks.