Complete rework

Added interfaces, enumerations, classes, etc.