Impacted versions:
10.0
Steps to reproduce:
1. Create Customer Invoice and Validate
2. Make Payments on Payments screen and confirm
3. Open Manual Payments and Invocies and try to reconcile hitting CTRL-Enter for mass reconciliation

Current behavior:
Odoo server error raised with traceback
File "/home/odoo/runbot/extra/runbot/static/build/188623-10-0-347494/odoo/addons/account/models/account_move.py", line 729, in process_reconciliations
    self.process_reconciliation(datum['mv_line_ids'], datum['new_mv_line_dicts'])
TypeError: process_reconciliation() takes exactly 2 arguments (3 given)

Expected behavior:

Video/Screenshot link (optional):
![image](https://cloud.githubusercontent.com/assets/17149532/21532189/3596954a-cd4e-11e6-94fa-be2195bd9f7b.png)


addons/account/models/account_move.py
@api.multi
    def write(self, vals):
        if ('account_id' in vals) and self.env['account.account'].browse(vals['account_id']).deprecated:
            raise UserError(_('You cannot use deprecated account.'))
        if any(key in vals for key in ('account_id', 'journal_id', 'date', 'move_id', 'debit', 'credit')):
            self._update_check()
        if not self._context.get('allow_amount_currency') and any(key in vals for key in ('amount_currency', 'currency_id')):
            #hac
            #thi
            self._update_check()
        #whe
        if vals.get('expected_pay_date') and self.invoice_id:
            msg = _('New expected payment date: ') + vals['expected_pay_date'] + '.\n' + vals.get('internal_note', '')
            self.invoice_id.message_post(body=msg) #TOD
        #whe
        for record in self:
            if 'statement_id' in vals and record.payment_id:
                # In 
                if all(line.statement_id for line in record.payment_id.move_line_ids.filtered(lambda r: r.id != record.id and r.account_id.internal_type=='liquidity')):
                    record.payment_id.state = 'reconciled'
        result = super(AccountMoveLine, self).write(vals)
        if self._context.get('check_move_validity', True):
            move_ids = set()
            for line in self:
                if line.move_id.id not in move_ids:
                    move_ids.add(line.move_id.id)
            self.env['account.move'].browse(list(move_ids))._post_validate()
        return result
    @api.multi
    def _update_check(self):