Text this: Generalized Cardioid Distributions for Circular Data Analysis