Probably been mentioned a few times, but how about Cat Stevens (Yusuf). This is a fun topic, but I have to be careful or I will end up going down a YouTube rabbit hole for hours and hours. I could never pick a "best" because it is so subjective and there are so many really amazing song writers.
It takes as long as it takes unless you quit - then it takes forever and you will never get there.