def loading(self):
        """Context manager for when you need to instantiate entities upon unpacking"""
        if getattr(self, '_initialized', False):
            raise ValueError("Already loading")
        self._initialized = False
        yield
        self._initialized = True
Context manager for when you need to instantiate entities upon unpacking