Mpropdef2node

Introduce services to isolate more the model from the AST.

Dissociating the AST and the model reduce the coupling.
The two new services `mpropdef2node` and `collect_attr_propdef` of `ModelBuilder` replace most accesses to the uncontrolled maps `mpropdef2npropdef` and `mclassdef2nclassdef` (now made private).
They will permit to control how the rest of the code access the AST nodes.

In some future, these indirections could be used to process part of the AST in a lazy way where the requested AST part will be modelized&semantized only when required by the tools.