pub type PolyFnSig = Binder<FnSig>;
pub struct PolyFnSig(FnSig, Interned<[BoundVariableKind]>);
0: FnSig
1: Interned<[BoundVariableKind]>