I'd recommend just trying Flickr out if you haven't already.
I use to host my own photo galleries on my website with various PHP applications and would NEVER go back after having used Flickr. It does the albums (sets), the tagging, it has the API for uploading (and browsing) and a boat load of applications already built around it. It supports comments and Facebook style box-drawing on your photos. It allows you to control who can see your photos on a per-photo level (if you want).
They also have this concept of Guest Passes. Basically they are URLs you can setup and give to your family / friends so that they can get access photos that you don't want to make "public". Personally I like how this doesn't require your family to "login". Just so long as they use the URL you provide they get to see the extra photos. This may not be as secure as you want, but I've found that it works great for my purposes.