Provides a widget for inline management (creation, modification, removal) of referenced entities.
The primary use case is the parent -> children one (product display -> products, order -> line items, etc.),
where the child entities are never managed outside the parent form.

Supports commerce_product_reference, commerce_line_item_reference and entityreference fields.
Requires integration code to be provided for each entity type that can be referenced.
Supports the commerce_product (including Commerce AutoSKU integraton) and
commerce_line_item entity types out of the box.

Getting started
---------------
Edit the reference field for which you want to use this module
(for example, the Product field on a product display node, or the Line Items
one on commerce_order) and select the "Inline entity form" widget.

For optimum UX, the field only have one allowed bundle selected, if possible
(this is the "Product types that can be referenced" setting on product reference
fields). The field should be required.

The widget is currently optimized for cardinality 1 (in which case the inline
entity form is shown without any action buttons) and cardinality unlimited
(in which case a table of entities is shown, along with an add form with its
own action buttons). The cardinality of a field is set in the "Number of values"
dropdown.

Integrating with Inline Entity Form
-----------------------------------
An entity type can add support for this module by declaring the
inline entity form controller class in its entity info:

$entity_info['commerce_line_item']['inline entity form'] = array(
  'controller' => 'CommerceLineItemInlineEntityFormController',
);

The controller needs to extend EntityInlineEntityFormController and at least
override entityForm() to provide a functioning entity form.
