Automating Involutive MCMC using Probabilistic and Differentiable Programming