customize FormSet class after calling inlineformset_factory

That way there's no need to know what base class inlineformset_factory
uses and it's consistent with StockRecordFormSet.
Unify __init__ method signature of formset classes

so that we can treat them all the same in ProductCreateUpdateView. Also
add user argument as that will be needed for
https://github.com/tangentlabs/django-oscar/pull/1002
Make it trivially easy to add more formsets to the product update page
Provide a hook for cross-form validation
Merge pull request #1022 from mbertheau/easily-add-new-formset-to-product-update-page

Easily add new formset to product update page