I bought my domain thru godaddy and my hosting is thru HostGator. I'm happy with both
I learned a couple of years ago when I lost my original domain name b/c of my host (fatcow..not calling them a fat cow..that was their name) to not buy your domain thru whoever you host thru. Keep them separate in case something happens and your hosting company closes or something you aren't out your domain name if you can't transfer it.