CREST: A Joint Framework for Rationalization and Counterfactual Text Generation