Thanks for that article. I will probably start using those techniques.
However, I'm not sure that it solves the questions I was asking. It will make my session and database classes have to refer to yet another class (the registry class). If the plan is to reduce the dependence of my classes on other pieces of code, it would appear that we have accomplished just the opposite.
On the other hand, I can see that instead of referring to several different objects ($db, $error_handler, and $session_handler) then my subroutines and classes can just refer to $registry.
But on the third hand, what if necessary items are not defined in the registry?
still trying to get my head around this...