Hi Neil,
Yes your understanding is correct.
Below is summary explanation, I have also shared the link to the technical diagram in developer training
Entity is a base class for Person(Contact), Household and Company
However, Person.meta is a direct child class.
HouseHold and Company are child classes of Organization.meta which is also a sub class of Entity
Entity-> Person
Entity-> Organization -> Company
Entity-> Organization -> Household
Also:
Entity-> Organization -> Department
Functionally, only Person (Contacts) can be in a household and play unique role
Company and Department are part of hierarchy structure independent of Households
A contact can belong to both a Company or a Household
Hope that helps.
Regards,
Dhruv