It occurred to me to drop a note about hosting, since many of my clients don't quite understand what it does, how it works, or when or what to buy. This is not comprehensive, of course. Just some notes on how to save some $.
Not to talk down to you, but just in case you don't know: buying a domain and hosting are different! It's a total pain to transfer your domain or hosting, in my experience. So ideally you do it once and forget about it. Often that means clients buy their domains and hosting for years at a time so they don't have to think about it, or the dreaded day that their site goes down and they don't know why.
I think it's fine to purchase domains for 2+ years, but not hosting! Since hosting covers your emails and often times HOW you build your site, it is not wise in my opinion to buy hosting for more than one year at a time.
Right now I have 2 clients that have bought hosting for 2+ years, but now want to use a content management system like weebly, squarespace, wix, etc. Now these companies make you host with them! So many people find themselves paying a premium for hosting, not once but twice. That can be hundreds of dollars wasted. So don't buy years plus of hosting! Just do one year at a time; because the marketplace changes rapidly and there might be the next big thing - the next (HOPEFULLY) new and improved Wordpress out there that changes the face of web design.
As an aside: Google Email has found a great way to charge you a premium to have your private domain name and email address: firstname.lastname@example.org for example. They charge you for each person that needs an email! I think that is bunk, but when you use a CMS like weebly, squarespace or wix, you are forced to buy the google mail if you want a proprietary email address, in addition to hosting with them. Personally, I would just say "use gmail", if possible. There are good reasons for a boutique business owner to do this (lipsting(at)gmail.com), but one reason gmail would not suffice for me is I prefer to be able to send or receive graphics over 10mb; since I deal in imagery. I personally am not worried about proprietary email addresses too much; as some worry about how that "looks" to use them, as a small business owner.
These days, you absolutely need a gmail address to get to their other awesome services like google docs and calendar. I use these everyday; have apps on my phone and ipad as well.
I'm certainly no expert on hosting and domain names, but I used to scoff at godaddy. Today I wish I was with them! My hosting company is fine - functional and all, but their interface is ancient.
When you utilize an actual person for your hosting, it's my experience that they're just trying to make some mailbox money by hosting you and some others - and don't want to deal much with customer service. These are people that code/build your site and want you to host with them. Of course there are good ones out there but....
I had a REALLY bad experience helping a client where the guy on the other end of the phone actually illegally hijacked his website shutting it down and refusing to transfer it. What are you going to do? Sue them? He almost had to abandon his long-term domain name.
Smaller hosting companies don't have a sufficient automated interface to do details like changing the dns servers for example; and if they do you will probably be confused trying to find what you need.
I hope this has been helpful. It's of course, only my personal experience and opinion.