Sanitize code

This p-r fullfills 2 objectives: 
  * first, organize the data in better structures (ie, with better types) allowing the compiler to early help. It also allows the programmer to better share knowledge about those structures (eg, simple names of information).
  * abandon the idea of lazy parsing large files with a Canpipe XML. Instead, we split the file in its lines and parse them eagerly.