[FIX] models: in _create() and _write(), mark fields to recompute earlier

An issue occurs when a constraint is checked before computed fields are marked
for recomputation: the constraint will read the field's current value, which
may be wrong.  If the field is marked soon enough, the constraint will trigger
the recomputation and use a correct value.
[IMP] fields: do not force required=True on related fields

This may cause issues if the field is stored: non-null constraint will prevent
saving records when no value is provided.
Merge branch '8.0' of https://github.com/odoo/odoo into 8.0-linux64