2) The file 'classes.i' defines various object and actor classes and attributes. Examples of object classes are for example backgrounds, scenery objects, lightsources, liquids, doors, windows, clothing and devices.
For example, if you declare an object to be a liquid, you can pour it in or on something, fill something with it, etc. It is also possible to mix liquids with each other. A device object can be turned (=switched) on or off - if it is not broken, etc. Clothing can be worn in layers: the library checks that if you are wearing a jacket, you can't put on a shirt, etc.
Actor classes include e.g. female and male. Actors can be e.g. made to follow the hero just by giving them the attribute 'following' when needed.