Is sharable if marked as and if buttons are sharable (they might
        hold sensitive data).

def is_sharable(self):
        """
        Is sharable if marked as and if buttons are sharable (they might
        hold sensitive data).
        """
        return self.sharable and all(x.is_sharable() for x in self.buttons)