Master i18n fp

Improvements
-------------------

This branch improves the translation mechanism, mostly needed for frontend:

1/ Translation of XML/HTML fields: are managed like arch in ir.ui.view. Splited in smaller goups rather than having to translate the whole field (e.g. a blog, a product description, etc.)

2/ Typos management when translating from the website: if a typo is fixed on an english string, you do not have to translate the whole blog again in all languages. If you completely change a paragraph, it has to be translated again (only the paragraph, not the whole blog). If you just fix a typo, the translated versions remain.

3/ The translation of views is not a specific use case anymore, it's just translate=True on the arch field of ir.ui.view.

4/ Mark as 'To Translate' translated values of an English field that has been changed (if the distance of the change is higher than 0.9). Exemple:
   'Hello Wrold!' to 'Holy Grail!' --> You have to re-translate the french version
   'Hello Wrold!' to 'Hello World!' --> You do not have to re-translate the french version

Changes
------------

* Fields support not only translate=True, but also translate=CHUNK_METHOD. This method takes a string in argument and return a list of strings to translate.
* From the client side point of view, translate=CHUNK_METHOD is like translate=False. (e.g. you can not modify the french version of the arch field of views)
* The context on translations changed in the exported .PO.   #: view:resource.calendar.leaves:0 is now  #: model:ir.ui.view,arch:resource.view_resource_calendar_leaves_search

Done
-------

Seems to work fine:

- tested to import .PO
- tested to export .PO
- tested in the frontend (translate read/write)
- tested in backend (translate=True fields  and translate=method ones)

Todo
-------

- put chunk_xml (in ir_ui_view) in tools/xml.py and use it in blogs, product description, ...
- improve chunk_xml to not split around inline tags: \<b\>, \<i\>, \<strong\>, \<span\>, \<em\>
- Adapt the frontend to support translation of HTML fields like views
- I put some TODO in the code, to finnish.
- optional improvement (only if few lines of code): add the english source when translating in french in the frontend as a tooltip. it's way easier for translators and reviewers.
- More tests
- Re-export .POs in all languages (ask ODO for this, he has his own script to do this)


Known Bugs
----------------

get_close_match is not perfect due to spacings in XML (When editing an english version, multiple spaces are be crunched to one space. Due to this, get_close_match think it's a huge change, but there are nearly no change)

To reproduce:
  - translate the sentence in footer (We are a team of...)
  - change the english version by one character
  - the translated version is not available anymore (it should stay in french since you just changed one character)
If you repeat these steps just after, it works. (no more multiple spaces)