Impacted versions:10

Steps to reproduce:
Following the code in https://www.odoo.com/documentation/10.0/api_integration.html both in a fresh install and against 'https://demo.odoo.com/start' trows a type error

Current behavior:
Now I get an error when executing:

```
ids = models.execute_kw(db, uid, password,  'res.partner', 'search',
    [[['is_company', '=', True], ['customer', '=', True]]],
    {'limit': 1})
[record] = models.execute_kw(db, uid, password,
    'res.partner', 'read', [ids])
# count the number of fields fetched by default
len(record)
```

In particular it seems to be a type error (cannot marshal class odoo.tools.float_utils.float_precision)

Expected behavior:
I would expect it to behave as in the documentation

openerp/fields.py
bymodel = defaultdict(lambda: defaultdict(list))
        for field, path in records._field_triggers[self]:
            bymodel[field.model_name][path].append(field)
        for model_name, bypath in bymodel.iteritems():
            for path, fields in bypath.iteritems():
                if path and any(field.compute and field.store for field in fields):
                    
                    stored = set(field for field in fields if field.compute and field.store)
                    fields = set(fields) - stored
                    if path == 'id':
                        target0 = records
                    else:
                        
                        env = records.env(user=SUPERUSER_ID, context={'active_test': False})
                        target0 = env[model_name].search([(path, 'in', records.ids)])
                    if target0:
                        for field in stored:
                            
                            target = target0 - records.env.protected(field)
                            if not target:
                                continue
                            spec.append((field, target._ids))
                            
                            
                            if field.compute_sudo:
                                target = target.with_env(records.env(user=SUPERUSER_ID))
                            else:
                                target = target.with_env(records.env)
                            target._recompute_todo(field)