Various model validation enhancements

* Fix cyclical model identification
* Add warning for duplicate entries in model subTypes
* Add error for model multiple inheritance
* Add error for model subType redeclaring property of ancestor