Good Idea, and you make a breakthough, at least I see your desire
I see your CMS structure, it's good. But it's only for a small CMS. if you want a stronger CMS, you have to think about a more total solution. Header/Navigation/Sidebar.. is only the HTML Module and it should not be a "physical" module. A suggest, you can learn from a bit from Joomla/Mamboo's CMS Enginerring, and this is my Raaapid CMS (developing) structure:
- a "web page" generated by complex of it's components, modules, bots (just like joomla, it's a very smart way)
- Classify "modules" into 2 types: HTML Block (only HTML codes) and PHP (include phpfile and return HTML codes to combine with global HTML Templates...)
- the "bots" used to render, optimize your HTML Codes generated before..