[FIX] mrp: better selection of bom

When searching for a bom based on a product.product, the method used to return any bom linked to the template (so searching for bom for variant A could return bom for variant B if both share the same product.template).
This will allow to return bom not linked to a variant without returning the one of another variant (opw 609358)
[FIX] account: fix unexpected invalidation of field account_invoice.reconciled

Problem: the field account_invoice.reconciled was invalidated by a workflow
signal sent from the compute method of the field. The purpose of the signal was
to re-open the invoice when the account move lines were no longer reconciled,
for instance after cancelling a reconciliation.

Solution: modify the workflow such that it makes an automatic transition from
'paid' to 're-open' when the condition 'not reconciled' is met. This works
because the field 'reconciled' is stored, and each recomputation forces a
reevaluation the workflow. The signal to re-open the invoice is thus no longer
necessary.
Merge pull request #1581 from odoo-dev/8.0-fix-account-invoice-rco

[FIX] account: fix unexpected invalidation of field account_invoice.reconciled
[IMP] workflow: add sequence for ordering workflow transitions (split/join mode especially for XOR)

Makes ordering transitions easier and more deterministic.

(Rebase of #1564)
[FIX] web: tooltip container set to body in all case

Mandatory since we changed the structure of the dom since 8.0.
[IMP] base/res_users: improve reading/writing of reified group fields

- simplify the code by removing unused cases
- do not modify input argument 'value' of create/write
- do not call BaseModel.read() with reified group fields (this causes warnings)
[IMP] Do not create FK when destination model is _auto=False

It is not useful to try to create foreign keys when the destination model is
a PostgreSQL view for example.
We already do this kind of verifications but ir.actions and transient models
but did not for _auto.
[FIX] account: prevent crash onchange company_id

(rebase of #1534)
[IMP] models: turn _patch_method() and _revert_method() into class methods

This makes the patching mechanism more flexible, and enables patching BaseModel,
for instance. This should fix #1501.
[FIX] web_kanban: parent can be undefined in some cases

opw-611106, when clicking quickly Sales > Opportunities than Sales > Leads.
[FIX] purchase: now allow 'can be purchased' to be checked even if not variant

Before, the field purchase_ok was set as readonly on the product form if the product wasn't a variant, to avoid users to set all the products variants associated to the product template to be set as purchase able in one action.

We now consider that this can be done by the end user
[MERGE] forward port of branch saas-5 up to 7d7f6fe
[ADD] mrp_operations: Convert mrp_wc_barcode.rml to qweb report. set paperformat custom height and width.
[REM] mrp_operations: remove rml and py file.