Improved error messages

Short paper:
http://www.chargueraud.org/research/2014/ocaml_errors/ocaml_errors.pdf

Slides:
http://www.chargueraud.org/research/2014/ocaml_errors/demo.html

Video:
https://www.youtube.com/watch?v=V_ipQZeBueg

Technical description:
See file improved_errors_branch.txt in the new branch (or in the diff page at the url below).

Patch:
https://github.com/charguer/ocaml/compare/ocaml:4.02...improved-errors
I think we need a more explicit word than `new` here. Perhaps `-explain-type-errors`.
I don't think it's good to describe it in terms of "old" and "new", because it doesn't look like the "old" stuff is going away.
Also, the description string looks wrong.