Joey, here are a couple of links that could be helpful in giving you a lot of information about hosting. The first one will direct you to over 400 very informative articles about hosts that will give very detailed answers to just about any hosting related question you might have.
The second one has the thoughts of some 5 Star members about hosting companies they have experience with.
Everything you need to know about web hosting
Your favorite web host
On your domain registration question. Most reliable registrars will notify you several times before your registrations expires. You should renew it before it expires. Also most reliable host will still allow you to renew it after it expires during a period that is usually 30 days but I have seen it as long as 45 days. However it will cost you much more to renew during that period. While you could have renewed it before it expired for less than $9.00 it would cost about $80 during that period after it expires. It you don't renew it during that period then someone else could get your domain name. It is best to renew before it expires.
A reliable registrar will send you email notifications starting at 90 days before your domain name registration expires. They will send a few at various times as the expirations gets closer and will also send you a notice by regular mail letting you that it is about to expire.
It is very important that you select a good registrar. Here is a link that could be helpful to you in making that selection
Your favorite registrar. Do you use a high price one?