As I understand it, SegWit is a soft fork since it doesn't change the block size - just the format of a block. If that's so, how is compatibility maintained? Let's say you have old mining and wallet software that has not been modified to support SegWit. What happens when those things encounter a SegWit-formatted block? It seems like they just wouldn't know what to do with it. Is that true?