model: make model entities frozen
we do not really need them to be mutable, plus we gain their instances now being hashable, so we can add them in set() for example.