Added "this" and address balance.

The StructDefinition is also stored in the type of the member (although not publicly accessible), so this would only require one dynamic cast. On the other hand, I wanted to hide the struct in the type, because it does not really matter for the type. What matters fo the type is the types of the members: I think it should be legal to explicitly convert between two different types that have the same structure, but it does not matter whether the structs have the same name or not.