Text this: Deep Learning in Music Generation: A Comprehensive Investigation of Models, Challenges and Future Directions