Actually model and entity depending on models have a strong circular dependency. adg_entity_destroy() (or maybe g_object_run_dispose() directly) can be used to break this relation.
Investigate if there is a cleaner way (maybe leveraging weak references) that can avoid this issue (circular dependencies are notoriously a pain to manage).