Converted all "complex" (for example participating in class hierarchies) data type to classes