move mixtape into a model with a factory method