1 type gnrique "entit", avec les attributs suivants :

  - frontend *f
  - l7switch *s
  - backend  *b

des types spcifiques sont simplement des entits avec certains
de ces champs remplis et pas forcment tous :

  listen   = f [s] b
  frontend = f [s]
  l7switch = s
  backend  = [s] b

Ensuite, les traitements sont valus dans l'ordre :
  - listen   -> s'il a des rgles de l7, on les value, et potentiellement on branche vers d'autres listen, l7 ou back, ou on travaille avec le back local.
  - frontend -> s'il a des rgles de l7, on les value, et potentiellement on branche vers d'autres listen, l7 ou back
  - l7switch -> on value ses rgles, potentiellement on branche vers d'autres listen, l7 ou backends
  - backend  -> s'il a des rgles l7, on les value (quitte  changer encore de backend) puis on traite.

Les requtes sont traites dans l'ordre des chanages f->s*->b, et les rponses doivent tre
traites dans l'ordre inverse b->s*->f. Penser aux rcritures de champs Host  l'aller et
Location en retour.

D'autre part, prvoir des "profils" plutt que des blocs de nouveaux paramtres par dfaut.
Ca permettra d'avoir plein de jeux de paramtres par dfaut  utiliser dans chacun de ces
types.
