I would not buy a domain name and hosting from the same company! Because if you have problems with the host, then you may have problems with the domain. It's always a better idea to purchase a domain through another company, that way if your host blocks you, you can point the domain somewhere else.
I purchase domains only through domainsite. Been using them for years and have never had any problems. I had to call their tech support just recently, they were very helpful and fixed my problem up quick.
As for hosting, I've never seen my service go down through godaddy or spidahost. Godaddy's interface blows though. Spidahost uses cpanel, which is very easy to use.
I recommend spidahost for hosting, and domainsite for your domain. Get the cheapest package through spidahost, and upgrade if you need to later. As for domainsite, don't buy any of their extra packages, they're completely unneeded when you have a proper host.
http://www.spidahost.com/?page=hosting
http://www.domainsite.com