Allow Variant selection for Products without Options

Currently a bunch of code assumes that a product only has variants if it has options,
even though what really matters is whether there are variants.
This PR checks for the presence of variants instead of options.
Display Product Variant consistently in cart, checkout, order receipt.

Currently there are 3 frontend areas where a product variant is displayed in 3 slightly different ways.
This PR centralizes display logic into one template and simplifies the other templates.
Add description to promotion adjustments

Currently promotion adjustments don't have a description.
This PR makes it possible to pass Promotion descriptions to these adjustments.
Fixed typos/PHPDoc
Merge pull request #518 from pborreli/typos-friday

Fixed typos/PHPDoc
Merge pull request #512 from Richtermeister/promotion-descriptions

Add description to promotion adjustments
Adding confirmation modal
Adding the modal translation
Behat tests
Small fix
Explicit error message
The button macro was not used...
Updating the behat tests
Fixed an incorrect encoding causing an exception when it locale was used
Added an Italian missing translation
Add fallback to normal confirmation page when deleting item
Added some italian translations that were missing
Merge pull request #520 from marcoalbarelli/master

Fixed an incorrect encoding causing an exception when it locale was used
Merge pull request #509 from Richtermeister/variant-display

Display Product Variant consistently in cart, checkout, order receipt.
Merge pull request #522 from stloyd/feature/confirmation-modal

Confirmation modal
Merge pull request #510 from Richtermeister/variants-over-options

Allow Variant selection for Products without Options
To fix #441 (duplicated variants after generations)