Enhance config api and upate model spec generator to incorporate discriminators
Update polymorphic config to only allow discriminator on the base type
Minor cleanup, re-org code
Not a particularly usefull comment
Several class renames to improve readability, in a particular consistency with Swagger terminology
Add genric constraint to tighten up polymorphic type config