[FIX] product,float_utils: perform ceiling via float_round with new rounding_method UP

Modified product ceiling() to use float_round() with special mode
for rounding UP (away from zero), avoiding pathological cases where
float representations errors were ceiling to the superior unit.

Also added correspding tests for rounding_method=UP

Fixes issue #1125, and replaces PR #1126.
[FIX] product: _compute_qty: first round before ceiling, to avoid pathological cases

Fixes problem when we try to sell 12 units of a product and change it to 1 dozen,
the algorithm was then trying to recompute the original amount and was getting
12,0000048 as a result which was then passed to the ceiling method, getting 13.0!

See also previous commit and issue #1125, PR #1126
[FIX] portal_sale: force empty context

The context was removed by 1933e926.
[FIX] crm: merge the phonecalls during an opportunities merge
[MERGE] forward port of branch 7.0 up to 5f6d324
[FIX] payment: transaction formview display issue

Using group without defining the col attribute will let the form
renderer choose the right display to avoid screwing up the layout
[FIX] res_users: do not copy login_date when duplicating users
[FIX] cron: doall false by default

As in most cases, we do not want this doall
[FIX] fix context problem in graph view

The group_by query expects the context to have group_by_no_leaf = true,
so we can not just blindly forward the context to the groupby query.
This is a defensive way to fix the problem, to avoid other possible
crashes.  But the context shouldn't have group_by_no_leaf anyway,
it does not make sense to explicitely do that in the action
[MERGE] forward port of branch 7.0 up to af37b30
[FIX] project_mrp: task description duplicated + product name translation
[MERGE] forward port of branch 7.0 up to cac6a26
[IMP] account: use float_compare for taxes

Avoiding some python float representation errors
Revert "[FIX] product,float_utils: perform ceiling via float_round with new rounding_method UP"

This reverts commit d4972ffdb6b9356a524eef1dbc11f455ff4473f2.

Seems to break some cases, at least in _product_reserve from stock/stock.py

Actual use case:

SELECT product_uom, sum(product_qty) AS product_qty FROM stock_move WHERE location_dest_id=%s AND location_id<>%s AND product_id=3645 AND state='done' GROUP BY product_uom;
returning 1 | 6

SELECT product_uom,-sum(product_qty) AS product_qty FROM stock_move WHERE location_id=%s AND location_dest_id<>%s AND product_id=%s AND state in ('done', 'assigned') GROUP BY product_uom;
returning 1 | -6

results += cr.dictfetchall()
    total = 0.0
    results2 = 0.0
    for r in results:
        amount = uom_obj._compute_qty(cr, uid, r['product_uom'], r['product_qty'], context.get('uom', False))
        results2 += amount
        total += amount
Total = 1, amount = -5

It should actually be
Total = 0, amount = -6
[MERGE] forward port of branch 7.0 up to 333852e
[FIX] tools: remove useless attributes
[MERGE] Forward-port of 7.0 up to 9b1a9c9
[FIX] im_livechat: ir.config_parameter must be read as superuser

As ir.config_parameter is restricted to employees in ACL, for security reasons
[FIX] account: sort partner ledger report by partner ref, name
[MERGE] forward port of branch 7.0 up to 419c439