[WIP] Add requirements for language fall backs.

Would you find adding bool isInferred() to Term and TermFallback to be an acceptable solution? Do you have better suggestions?

That's much the same thing. Which I why I asked "Are you talking specifically about the case where you create a derivative of Term?". If you do that, you'll indeed end up with one of the two described pains. I'd rather we duplicate the exact stuff we did in the old serialization code, since that's just a local mess then and not something that creates weirdness in a much wider area. Of course there is no need to do exactly that, you can still separate things better.