Subtyping test with perfect hashing in the Nit vm

This pull request contains the first files for the Nit virtual machine.

In this PR, the vm constructs runtime structures for each MClass of the model. These structures represent virtual tables for classes. When constructed, the virtual tables only reserve memory for method pointer but the method call is made with the naive_interpreter mechanisms.   

The virtual machine can now performs subtyping test with the perfect hashing approach.

In the perfect_hashing module, numbering of items now start at 1 instead of 0.


Oui mais on peut faire un test de sous-typage avec une cible qui est un  type virtuel (ou générique).

Dans ce cas on peut retomber sur un nullable "emboîté" dans un autre type qui lui même n'est pas nullable.

La plupart du test de sous-typage ici est de toute façons recopié depuis celui contenu dans model.nit (celui utilisé par le modèle et accessoirement l'interpréteur).