"I really can't get my head around are Content Management Systems"
You're going to have to.
Home rolling the sort of features you want is reinventing the wheel and unless you are a pretty handy programmer you will struggle for a long time to come up with something useful.
Wordpress, for the sake of example, has some excellent plugins available. One of them is called CMS-like Admin Menu and another is Ryans Simple CMS and what either of them do is turn the Wordpress blogging system into a lightweight content management system that is dead easy to use.
Basically the above plugins hide many of the blogging menu options that you don't need for a CMS and default your menus to creating new pages of content rather than new blog entries.
Installing Wordpress is comparatively easy, even for relative beginners, and adding the plugins just requires you to upload to a specific folder using FTP and then activating the plugin in the plugin manager within Wordpress is the second and only additional step.
Other plugins cover image galleries and Wordpress can already cope with several types of admin user levels, with more available through using, you guessed it, another plugin (called Role Manager).
Bottom line: if you want CMS features you need to be using a CMS. Home rolled is fine if you are looking for something very particular, but when so many good CMSs are available off the shelf I see no reason why you would benefit from scratching your head over how to handle image uploads, dynamic galleries, user access level permissions and other nonsense. I can suggest a good book that covers much of what you would like to achieve, but be prepared to learn all about PHP programming and lots of other techno-babble to make any use of it.
I'd suggest you take a step back, decide where you want to be and then plan how best to get there. Websites invariably grow as you work on them and you have probably already found that what you started out wanting is now inadequate and a whole raft of requirements have surfaced since.
Having a firm goal state in mind helps avoid all the faff of "maybe I could add X" or "perhaps a bit of Y would fit well here"...
I only suggest Wordpress because with the above plugins it can cover most if not all of your listed requirements and it is comparatively easy to use. Happily, it also produces excellent code output and is pretty easy to template. Many web hosts also offer it as a point-and-click installable application from their control panel, but even if they don't, it is drop dead easy to install. It's a breeze compared to Joomla and Mambo and while Modx has an easy to use interface it requires far more fromt he user to get something useful out of it.
Just my thoughts - good luck with it.