Each user will have a maximum of one image, which will probably be resized and saved as a thumbnail.
I was wondering where would be the best place to store those images, on the server or should I get some type of outside hosting. I have a shared hosting account (with hostmonster if that matters).
Also, what are some good image hosting websites?
Depends on how often it will be loaded. Once in a while is fine on your own server. Quite often should be on S3 or some service like that.