I would go with hostgator...and alot of people don't realize that if you have more than 4 shared accounts,...it is much better to go with the VPS account. For about 30 bucks a month you can get unlimited number of accounts (sites) each with it's own cpanel, etc. Much better and easier that dealing with sub-domains, etc. IMO
Best web host is your own server located at your own place. These days, many of the web hosts are overselling on bandwidth, disk space, etc.