[FIX] mail: more robust parsing of In-Reply-To/References (OPW 608919)

When parsing incoming messages, ignore white-space around
In-Reply-To headers, and extract message-id items inside
the References header using a regex.
This actually serves as a workaround for broken MTAs
mangling References (such as outlook.com nesting past ones
with commas, violating RFC2822).

Closes #516 as a manual rebase.
[IMP] website: set geoip in user session
[FIX] tour: check if the tour is already finish before check next step
Merge remote-tracking branch 'odoo/master' into master-wmsstaging3-jco
[FIX] website: wrong cycling error message
[FIX] auth_crypt: encrypt all passwords at installation

When `base_crypt` was updated for v7, the auto-encryption
at installation was dropped, with user passwords only
encrypted on-demand whenever the user would connect.

It is important to encrypt all passwords immediately to
prevent password compromission for user who do not
login often or even for deactivated users who are not
allowed to login anymore.

Fixes https://bugs.launchpad.net/openobject-addons/+bug/1280152

Based on LP merge proposal by Nicolas Bessi (Camptocamp):
https://code.launchpad.net/~camptocamp/openobject-addons/improve_auth_crypt_3_please_launchpad_work-nbi/+merge/206476
Bring back exception conversion to Forbidden
[FIX] website: geoip can't be none
[FIX] website: missing timezone conversion back to UTC

In t-field, datetime fields (formatted and not formatted versions) are
converted to the context/user's timezone (through
fields.datetime.context_timestamp) when displayed, but were saved without
converting back so the next display would go forward (or back) of the user's
tzoffset.

Fix that by applying context_timestamp's conversion backwards, from the
context/user's timezone back to UTC, before saving the field's value.
[IMP] Corrections on pull request
git commit -a -mm
Merge pull request #630 from xmo-odoo/master-website-save-datetime-xmo

website: missing timezone conversion back to UTC on save
Merge pull request #616 from odoo-dev/7.0-opw-608485-rgo

[FIX] l10n_be_invoice_bba: random generation do not use sequence, so should be 10 char long during padding
reconcile_partial() return reconcile record id

It should be similar like it's done with reconcile(). That would help a lot when needs to make automatic partial reconciliations.
Removed widge=selection from account_id field in line in Purchase Receipt, as it only displays limited records(100) from the limit set in the name_search
[IMP] auth_crypt: port to passlib instead of using embedded/hand-rolled md5crypt
[IMP] auth_crypt: upgrade default kdf to pbkdf2_sha512

Applies to new and yet-to-be-encrypted users, existing already-encrypted will
keep logging in as usual, their password storage will be upgraded on next
password *change*.
[IMP] auth_crypt: automatically upgrde deprecated hashes on login
[IMP] auth_crypt: simplify get_pw
[IMP] auth_crypt: variables naming