I've been using Dynadot lately and have been pretty happy. My only complaint is that their 2 factor authorization is not Google Authenticator compatible and doesn't work at all if you have 2 accounts on the system (like work and personal).
I use iwantmyname.com for just domain names, but they have great one-step integration for email with Google Apps/Live for Domains/Zoho/pick-your-choose.
I've used Namecheap before and they were decent, though the dashboard looks like it was built in the 90's.
I checked out Hover but they seem to charge a lot for email.