Involutive MCMC: a Unifying Framework