Creating a PHP MVC framework from scratch