Output partial classes.
For non-leaf elements, don't include bcl potential property definitions.
Document when different types of properties can occur.
Use ClassRepository instead of constructor of UserDefinedClass.
BclClass constructor is private, added factory method.
Implemented lists.