Hola, aca les adjunto la primer aproximacion al diagram de clases, despues de la imagen les detello un poco que haria cada funcion;
Lo primero que quiero decir es que la clase Database y Config no se conectan con nadie por que son singletons y se usan en la mayoria de las clases, si las unia se hacia un quilombo visual.
La idea es que ciertos objetos como Blog, y Post que son de uso comun puedan cachearse usando un serialize. Para eso estan las funciones saveCache, cleanCache, y load que lo que hace es ver si puede recuperar al objeto cacheado, si no puede lo carga de la base de datos.
Para ilustrar un poco como quiero que funcione les copio como deberia quedar el index.php ;
Código PHP:
include('archivoConLasClases.php');
//el siguiente archivo se deberia encargar de setear el singleton Config
include('config.php');
$elBlog=new Blog();
if(isset($_GET['postId']))
$postId=$_GET['postId'];
$elBlog->load();
$elBlog->loadPost($postId);
$elBlog->render();
Me falto agregar la funcion loadPost en blog, que solo tiene la siguiente linea;
$this->post->load($postId);
Saludos, y espero sus comentarios y correciones