Factorisation diverses du code de gestion des tutoriels

| Q                         | R
| ------------------------- | -------------------------------------------
| Correction de bugs ?      | oui
| Nouvelle Fonctionnalité ? | non
| Tickets concernés         | 

J'ai essayé de regarder [ZEP-05](http://zestedesavoir.com/forums/sujet/676/zep-05-refonte-du-traitement-markdown-pour-lexport/) mais il faut lire le code de `tutorial/{models,views}.py`, donc j'ai essayé de m'y familiariser en le modifiant un peu.

Cette série de patch factorise le code pour qu'il soit plus lisible. Je pense qu'il y a encore beaucoup à faire pour retirer les redondances, mais il y a des irrégularités dans le code (par exemple certains remplissages de chapitre fournissent une clé `get_absolute_url{,_online}`, d'autres non) qui rendent cela plus difficile à moins de régulariser le comportement. Les patches joints essaient de préserver absolument le comportement existant (sauf bug manifeste), et n'essaient donc pas de factoriser ça.

Je n'ai pas du tout testé le code, puisque je n'ai pas encore réussi à installer ZdS en local (issue #1350).