I would go with a web host such as Hawkhost.com and sign up for their cloud hosting service where you can easily scale the resources for the server and website with just a payment and a few clicks of the mouse.
I was using hawkhosts shared hosting for 4 years hosting a blog and then outgrew the shared hosting and moved over to the cloud hosting service which is very fast.
My blog loads faster now as a result of the cloud hosting.
The cloud hosting servers that provide SSH access is what I got and you do need some knowledge of operating a server through the command line but it's pretty easy to learn.
Also you can check through many hosting offers on the http://webmasterbabble.com
webmaster forum where hosting companies post their hosting offers.