typing: promote visibility/redef node in APropdef

Signed-off-by: Jean Privat <jean@pryen.org>
parser: promote all children in AMethPropdef

The point of the series is to refactorize the hierarchy of AMethPropdef
and simplify the complex syntactic variants.

So, put all specific fields in the root class, so clients will not need
to use the current complex hierarchy.

Signed-off-by: Jean Privat <jean@pryen.org>
src: use `AMethPropdef` instead of subclasses when is safe to do so.

Signed-off-by: Jean Privat <jean@pryen.org>
model: add `MMethodDef::is_extern`

Signed-off-by: Jean Privat <jean@pryen.org>
modelize_property: rely more on fields than on classes to do things

Signed-off-by: Jean Privat <jean@pryen.org>
nitx: modifiers ARE accessible via the model

Signed-off-by: Jean Privat <jean@pryen.org>
src: remove remaining references of subclasses on AMethPropdef

Only some references of AExternPropdef remain for the moment.

Signed-off-by: Jean Privat <jean@pryen.org>
tests: update tests because of changes in the location of error messages

Signed-off-by: Jean Privat <jean@pryen.org>
Merge: Simplify AMethPropdef

Prepare the change of the hierarchies of subclasses of AMethPropdef.

The first two commits generalize services of subclasses.
The rest updates clients to not statically rely on such a subclass.

This will permit the refactorization and the rationalization of the parser and the AST.

Pull-Request: #434
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>