You're already doing more & better than most PHP 'grammers. You've obviously thought about your structure and have made some good decisions.
Personally I don't like using global prepend... but I suppose it could be handy if you *really* want all your scripts to include the same family of classes. I don't always want that. So instead I load classes using include() or require_once().
What you're doing is already similar to a well established pattern called MVC (Model/View/Controller)
Here are some links:
Wikipedia - [
en.wikipedia.org...]
Java - [
java.sun.com...]
Microsoft - [
msdn.microsoft.com...]
As for the database class... well hey if it ain't broke, why fix it?
Stored procedures do help some people prevent SQL injection. But you can easily prevent SQL Injection using old-school query construction; with validation and escaping. I hope you have done so in your db class.
I don't know of any claim of increased speed or efficiency. If there are, that would be a compelling reason to do it.
Sometimes I'll do things like that if I get bored and I want to see how the technology works. An exploration that offers no improvement over what was there before. Sometimes that's enough of a compelling reason.
There are probably some useful things you can do that have a better payoff... like optimizing images, decreasing download time, investigate caching strategies, validate your HTML, give your site a CSS tuneup, compress your JS, set up a source control repository for your work, etc.
Then again, there is also an argument for stepping away from the computer, going for a walk, or spending some time visiting friends with wine. Mmmmm, wine. Goes well with pizza.