choice type, bug with circular references
* added "choice" type
* fixed bug with generating class types with circular references
* aliases for integers