Show variable and gate names fully freshened.

Very helpful for noticing when a simplify rule splits a variable.
Don't let gate-bound variables escape in parallelB.
Make unbound's `substs` actually do something.

I thought the Subst typeclass would use RepLib to implement `isvar` but
nope, I have to manually tell it where to find variables within
expressions. Just like its documentation says I have to.