Efficient single inheritance

Efficient single inheritance via virtual structs and unification and nesting of structs and enums.
Sorry I should have left a line note not a general comment. The names would indeed be very confusing if unification happens, as `struct`s and `enum`s would be more like haskell's `data`, not their namesakes from the C-derived languages.