Added `InteractHoist`

[none]
Rearrangements and instances

Especially instances for `IdentityP`.